2
当sh是bash或破折号的符号链接时,bash会将其自身限制为POSIX兼容,因此它应该与sh 100%兼容吗?
从bash和sh之间的区别: ABck的问题:如果你有/bin/sh一个链接的bash,那么bash将不会调用时为具有相同的行为/bin/sh,因为它不会在调用时/bin/bash。当称为时sh,它将限制自己为大多数POSIX兼容以及一组有限的扩展。 这是否意味着每当我在Linux中遇到带有shebang的shell脚本时#!/bin/sh,即使在该发行版上,它bin/sh都是到另一个shell(例如破折号或bash)的符号链接,它应该与bourne shell 100%兼容,因为是否将自身限制为一组有限的扩展名?这样我可以在FreeBSD中执行它们吗?有例外吗?还是我应该确定它会起作用? 因此,如果在发行版上bin/sh是的符号链接bin/bash,并且使用了脚本#!/bin/sh并且该脚本包含bashism,则该脚本将不会运行,因为bash会喜欢处于sh模式?