De Diferença entre bash e sh :
ABck à pergunta: Se você tiver
/bin/shum link para o bash, o bash não se comportará da mesma maneira quando chamado,/bin/shcomo é chamado quando/bin/bash. Quando chamado comosh, ele se limitará principalmente à conformidade com POSIX, além de um conjunto limitado de extensões.
Isso significa que sempre que me deparei com um script de shell no Linux com um shebang para sh:, #!/bin/shmesmo que nessa distribuição, bin/shseja um link simbólico para outro shell, como dash ou bash, ele deve ser 100% compatível com o shell bourne, pois se limita a um conjunto limitado de extensão? Então eu poderia executá-los no FreeBSD? Há exceção a isso? Ou devo estar seguro em assumir que funcionará?
Portanto, se em uma distro, bin/shhouver um link simbólico para bin/bash, e um script usar #!/bin/she o script contiver bashism, ele não será executado, pois o bash gostará do modo sh?