1、 ./ 跟 sh 完全不是一回事哦~
是这样的,unix 系统有着悠久的历史(
),以前有人干过这样的坏事:写一个有不良企图的程序,把她起名叫 ls 或者 mv 什么的,也就是跟系统命令同名,然后把这些坏程序放进你常用的目录里,大家用电脑不都是喜欢直接输入命令嘛,于是输入 ls 本来是想查看当前目录的文件列表的,但是实际上却执行了坏程序。于是现在的 ubuntu 里,规定如果你想执行当前目录中的程序,必须输入带目录名字的指令。这个点号“.”,表示当前目录,“./”就是当前目录中的意思~这样就算有人在这个目录放一个叫 ls 的程序,也不会跟 ls 命令产生混淆,你也不会不小心执行了~
而 sh ,这个程序是真正的一个程序,不是指定了什么信息。这个是 shell 的简写(为什么要这样简写?我就不知道了,都是加州大学伯克利分校那群人想出来的,还有好多奇形怪状的简写),也就是系统当前的脚本解释器。一般情况下这是一个符号链接(也就是快捷方式),会链接到 bash (一种很流行的 shell)或者 dash(另外一种很流行的 shell),你想知道具体的话可以执行 file `which sh` ,就可以知道到底是什么 shell,我的结果是 /bin/sh: symbolic link to `dash',也就是说我用 dash 做脚本解释器。脚本解释器是一种程序,她从一个文本文件里一行一行读出命令,然后执行,跟 windows 的批处理差不多,不过功能比批处理多得多~
给你说个显而易见的 ./ 和 sh 的区别:比如你想执行当前目录里的一个用 perl 脚本写成的程序,如果这个程序有执行权限,你可以直接 ./程序名字 就可以运行,但是 sh ./程序名字 是不行的,因为 sh 不能解释 perl 脚本,你需要 perl 的解释器,也就是一个叫 perl 的程序,你应该 perl ./程序名字~
2、可以的,你给你的系统装上合适的驱动就好了,比如nvidia的话你就装nvidia-current或者nvidia-current-updates(10.04好像没有这个)。你可以输入xwininfo,然后对着你想查色深的窗口点一下,就可以知道那个窗口的信息,包括色深。
3、是这样的,windows 的软件包策略是“各自为政”,所以你想要什么软件,需要自己上网去这个软件的站点下,并且更新什么的也需要靠软件自己解决。 ubuntu 的策略是“统一管理”,正确的做法是告诉系统在互联网上的某某位置有个服务器提供软件包,然后安装、更新的过程都是系统统一进行,也就是你说更新,她会更新系统中所有的软件~而不是windows那样每个程序都要单独更新。默认情况下, ubuntu 会记住官方的软件包服务器,这个服务器我觉得已经把大多数常用软件包都包含了,这个服务器的缺陷在于她不会实时更新软件包(我前面的帖子说了这个“冻结策略”),所以有人就会告诉系统,在互联网某某位置,有版本更新的软件包,于是下次ubuntu就会去新位置找新的软件包了~
你需要先明确你想要最新版本的软件到底是哪个,比如你不想从ubuntu服务器里下载 transmission ,而从 transmission的网站下最新版本,那么你可以 sudo add-apt-repository ppa:transmissionbt/ppa ,那么下次你 sudo apt-get update 的时候(或者系统自动更新的时候),就会去新位置找版本更加新的 transmission了哦~不要把某某软件本体下载回来,然后在对着她点两下什么的,这是windows的做法,不是ubuntu的做法。
编辑:你是在用虚拟机?虚拟机的话显卡驱动不能直接按照你硬件的驱动装,因为虚拟机里的系统根本看不到外面的硬件。你需要安装你那个虚拟机的 guest addon 。具体你看看帮助吧,就是要装你那个虚拟机程序提供的一个包。
allfox 最后编辑于 2012-10-21 10:39:19
-
1
评分次数
-