我正在阅读/bin/sh和/bin/bash之间的区别,并发现了这个有趣的问题/答案:这里。
我在回答中提出了同样的问题,并得到了更新后的答案:
如何在您的系统上找出/bin/sh指向的内容?
复杂之处在于/bin/sh可以是符号链接或硬链接。如果它是符号链接,则解决它的便携方式是:
如果它是一个硬链接,尝试:
我在回答中提出了同样的问题,并得到了更新后的答案:
如何在您的系统上找出/bin/sh指向的内容?
复杂之处在于/bin/sh可以是符号链接或硬链接。如果它是符号链接,则解决它的便携方式是:
> % file -h /bin/sh
> /bin/sh: symbolic link to bash
如果它是一个硬链接,尝试:
> % find -L /bin -samefile /bin/sh
> /bin/sh
> /bin/bash
我尝试了这个方法,但遇到了问题,所以我想发一个单独的问题。
我从链接的答案中得到的结果:
>file -h /bin/sh
>/bin/sh: executable (RISC System/6000) or object module
>find -L /bin -samefile /bin/sh
>find: bad option -samefile
我漏掉了什么?我正在使用AIX操作系统:
>oslevel -s
7100-03-03-1415
/bin/sh
确实是您系统上的可执行文件,而不是符号链接。请记住,它不一定会“指向”其他 shell 可执行文件。显然,您的find
实用程序不是 GNU find 实用程序,也与之不兼容。这对于商业 Unix 变体来说并不奇怪。 - arkaschaman find
之后搜索了“samefile”,但没有返回结果。这是否意味着我的“find”实用程序不支持该标志? - exit_1