当前位置: 技术问答>linux和unix
关于linux的很奇怪的问题。
来源: 互联网 发布时间:2016-02-08
本文导语: 有个小问题,把我弄晕了。 [root@ bin]# pwd /bin [root@ bin]# sh sh-3.00# bash [root@ bin]# ls -l sh lrwxrwxrwx 1 root root 4 Aug 1 11:11 sh -> bash [root@ bin]# which sh /bin/sh [root@ bin]# which bash /bin/bash [root@ bin]# 这是一个Linux...
有个小问题,把我弄晕了。
[root@ bin]# pwd
/bin
[root@ bin]# sh
sh-3.00# bash
[root@ bin]# ls -l sh
lrwxrwxrwx 1 root root 4 Aug 1 11:11 sh -> bash
[root@ bin]# which sh
/bin/sh
[root@ bin]# which bash
/bin/bash
[root@ bin]#
这是一个Linux server, bin 目录下的sh 是bash的链接,
但是执行sh 和执行bash的效果确不同,这是为什么呢
[root@ bin]# pwd
/bin
[root@ bin]# sh
sh-3.00# bash
[root@ bin]# ls -l sh
lrwxrwxrwx 1 root root 4 Aug 1 11:11 sh -> bash
[root@ bin]# which sh
/bin/sh
[root@ bin]# which bash
/bin/bash
[root@ bin]#
这是一个Linux server, bin 目录下的sh 是bash的链接,
但是执行sh 和执行bash的效果确不同,这是为什么呢
|
可能启动bash的时候会判断$0或argv[0]
如果$0为sh执行一段代码
如果$0为bash或执行另一段代码。。
如果$0为sh执行一段代码
如果$0为bash或执行另一段代码。。
|
我同意楼上的看法,BusyBox也是用这样办法以一个执行程序达到多个命令的效果。