Nella maggior parte degli script di shell che ho visto (oltre a quelli che non ho scritto personalmente), ho notato che shebang è impostato su #!/bin/sh
. Questo non mi sorprende per gli script più vecchi, ma è presente anche per gli script abbastanza nuovi.
C'è qualche motivo per preferire /bin/sh
su /bin/bash
, poiché bash
è praticamente onnipresente, e spesso predefinito, su molte macchine Linux e BSD risalenti a oltre un decennio fa?
Risposta accettata:
- Ci sono sistemi che non spediscono bash per impostazione predefinita (ad es. FreeBSD).
- Anche se bash è installato, potrebbe non trovarsi in
/bin
. - Gli script più semplici non richiedono bash.
- L'utilizzo della shell POSIX è più portabile e gli script verranno eseguiti su una maggiore varietà di sistemi.