ОШИБКИ
Слишком большой и слишком медленный.
Есть ряд небольших отличий между bash и традационными версиями sh, в основном, связанные с поддержкой спецификации POSIX.
Псевдонимы иногда могут сбивать с толку.
Встроенные команды и функции интерпретатора нельзя остановить/перезапустить.
Составные команды и последовательности команд вида 'a ; b ; c' обрабатываются некорректно при попытке приостановки процесса. Когда процесс останавливается, командный интерпретатор немедленно выполняет следующую команду в последовательности. Для выполнения последовательности команд в порожденном командном интерпретаторе, что позволяет останавливать их, как единое целое, достаточно взять ее в скобки.
Команды в операторе подстановки результатов выполнения команды $(...) не разбираются, пока не будет выполнена попытка подстановки. Это откладывает выдачу сообщения об ошибке на определенное время при вводе команды.
Нельзя (пока) экспортировать массивы.