一、su 和 su -
以前用的是fedora13,后来用ubuntu,虽然命令行用的不多,不过确实没遇到什么问题。直到后来装了低版本的fedora 9 (就是上次yum install不行,发现f9已然不支持的那个)才遇到个问题,ifconfg没得用,table不补全命令,so ,why ?哪怕su后也不行,不过su -后却可以。(说到这个f9,还真是觉得小杰考虑的周到,毕竟要学习稍微原理一点的东东,是可以考虑老版本的,毕竟新的版本,会帮你做太多事情)
说正题,一句话总结下su 和 su -的差别,就是path和当前工作目录(不过呢,用两个命令后,当前用户都是root(可以通过命令whoami查看,不论su还是su –都会显示/root表明是root用户)
细说,就是su命令不会改变当前工作目录以及home,shell,user,logname,不改变path变量,而su –命令会更改path变量,不同之处就是pwd查看工作路径,su后为/home/xia,su– 后为/root)通过命令echo $path可以对比出su和su – 后的path不同之处,就不列图了。
f9不能直接用ifconfig,是因为ifconfig命令,位于/sbin一般是指超级用户指令(shutdown也在),像另外的,如/usr/sbin 放置一些用户安装的系统管理的必备程序,如netconfig,所以不提供给普通用户删除修改的权利。楼主觉得是因为在以前的低版本linux中,提供的保护更强,而在ubuntu10.10中测试的结果,su后就可以使用这些命令了,可以说是逐渐开放了吧,不过当前工作目录是依旧不同的,区别就不如f9的大,不过依然是不同的
二、cd 、 cd - 和cd ~
cd,其实在windows下也是有的,虽然ls没有(其实在装了mingw后发现个好玩的,dir一般不能显示系统隐藏文件,而ls可以,如同用硬盘安装linux访问windows文件时,所谓系统隐藏,真的是毫无隐私可言,不过说白了,所谓系统隐藏,也只是windows保护文件而已,白敲什么attrib s h 了)
个人感觉,直接cd 和 cd ~没有差别,都是大自己的home 目录,只是cd 后还可以跟目录,可以绝对,可以相对路径, 以前还以为./是命令的,因为老是这样启动可执行文件,后来才知道,哎。。。惭愧啊
cd -则是返回上次操作目录(当然,刚登陆,没有操作目录的时候,运行cd -则会提示错误)
另外,cd ../..返回上两级目录,cd ..返回上级目录,说实话,对于返回两级目录这个,真的用的少,哪怕我在xp下win r输入3个点,也不会用cd ../..这样看起来很蛋疼的命令啊。
其实,到最后总结下吧,这些命令的差别,其实不算太大,真的不知道是在设计的时候考虑周到还是真遇到了这些问题后进行的修改,不过不得不说,linux在发展,像现在win7那个蛋疼的通知(我就直接给禁了),不就是仿照了linux的root验证么?linux也在学windows的界面啊;像linux有运行windows的wine,windows有仿linux环境的mingw,大家都在互相学习。感觉到后面,用起来的感觉都差不多了,底层的差异都被屏蔽了,到用户应用上,都差别不大了。用户才是王道呢么?