Pagina 28, nota 2:
robitexNei moderni sistemi Unix il programma sh non è altro che un collegamento al
programma bash, la Bourne Again Shell divenuta lo standard tra le shell disponibili per
i sistemi aperti ed anche per quelli Mac.
Non è esattamente vero: sh è un link simbolico a una shell che rispetti lo standard POSIX che non necessariamente è la bash, anzi per Debian e derivata (compresa Ubuntu, quindi stiamo parlando di una grossa fetta dei sistemi operativi GNU/Linux) /bin/sh punta a /bin/dash (Debian Almquist Shell), che è ben diversa dalla bash (è molto meno potente della bash). Uno shell script che voglia essere portabile attraverso i diversi sistemi operativi deve o avere esplicitamente /bin/bash nella shebang oppure, se usa /bin/sh come interprete, seguire pedissequamente lo standard POSIX ed evitare come la peste funzioni proprie solo di alcune shell. A questo proposito, un utente Debian sul suo blog pubblica ogni mercoledì a bashism a week, cioè una funzione esclusiva della bash che deve essere evitata nello scrivere script portabili