可能的重复:
可移植 shell 编程的资源
我想编写一个用于进一步分发的 shell 脚本。所以我想以一种尽可能可移植的方式来编写它;我的意思是它不应该依赖于任何奇特的东西,这些东西只能在qzdfsh
我碰巧安装在我自己的机器上的特定风格中可用。该脚本不会很复杂(最糟糕的情况是去除文件扩展名并测试程序的返回)。
我在哪里可以找到(几乎)所有 shell 都支持哪些内容?
(我特别意识到,它/bin/sh
经常与“其他东西”符号链接,因此简单地测试它是否适用/bin/sh
似乎是一种可疑的策略。)
答案1
虽然/bin/sh
可能是 bash 的符号链接,但它仍然有影响。 Bash 查看它是如何被调用的,如果作为“sh”调用,无论是显式地、通过符号链接、还是通过参数/开关,bash 将尝试在 POSIX 模式下运行。
所以使用shebang
#/bin/sh
并将其启动为./script
orsh .script
应该就足够了。