【发布时间】:2016-09-22 05:45:56
【问题描述】:
在 Shell 脚本中,我如何检查 /bin/sh 是否软链接到 dash 或 bash,我可能有 /bin/sh -> dash 或 /bin/sh -> bash
【问题讨论】:
-
总的来说,顺便说一句,即使
/bin/sh链接到 bash,您的代码也应该像链接到 dash 一样工作。当在sh名称下调用时,Bash 不承诺提供比最低 POSIX sh 功能更多的功能[尽管在实践中确实如此,在一定程度上因版本而异],因此任何使用#!/bin/shshebang 的脚本都应该编写仅使用该功能即可正常运行。 -
谢谢查尔斯,是的,它是重复的,对不起,其他答案对我有帮助。
-
stackoverflow.com/questions/31596363/…,顺便说一句,也与
readlink在没有实际拥有readlink的情况下能够做到的事情有关(包括各种后备实现,包括 GNUfind,perl,甚至最终ls -l)。