Dari Perbedaan antara bash dan sh :
Abaikan pertanyaan: Jika Anda memiliki
/bin/sh
tautan ke bash, maka bash tidak akan berperilaku sama ketika dipanggil seperti/bin/sh
halnya ketika dipanggil sebagai/bin/bash
. Ketika dipanggil sebagaish
, itu akan membatasi dirinya untuk sebagian besar kepatuhan POSIX plus satu set ekstensi terbatas.
Apakah ini berarti bahwa setiap kali saya menemukan skrip shell di Linux dengan shebang to sh:, #!/bin/sh
bahkan jika pada distro itu, bin/sh
adalah symlink ke shell lain, seperti dash atau bash, itu harus 100% kompatibel dengan bourne shell, karena itu membatasi dirinya untuk satu set ekstensi terbatas? Jadi saya bisa menjalankannya di FreeBSD? Apakah ada pengecualian untuk itu? Atau saya harus aman untuk berasumsi bahwa itu akan berhasil?
Jadi jika pada distro, bin/sh
apakah symlink bin/bash
, dan skrip menggunakan #!/bin/sh
dan skrip berisi bashism, itu tidak akan berjalan, karena bash akan suka berada dalam mode sh?