Спасибо предыдущим советчикам. Команду мы уже расширили, но курсов по bash мы так и не подобрали.
Поэтому только сегодня я узнал, что я ещё в большей степени не умею писать bash-скрипты, чем я думал раньше. Не прошло и пары лет, как я радовался открытию set -e (думаю, что большинство пользователей баш даже об этом не знают). И сегодня вдруг - бац
Оказывается, set -e устроена очень сложно, поэтому у неё бывают ложноположительные срабатывания. Заканчивается тем, что авторы данного документа не пришли к единому мнению:
Выводы
GreyCat рекомендует не использовать -e, а использовать вашу собственную проверку ошибок.
rking's советует пользоваться -e, но учитывать грабли.
geirha's советует должным образом обрабатывать ошибки и не полагаться на ненадёжное set -e.
Также можно вот это прочитать
Я здесь делаю такой вывод, что баш - это как C++. Пользоваться им нельзя, т.к. он слишком сложный и кривой, но заменить его зачастую нечем. В таких случаях нужно определить корпоративный стандарт с набором тех возможностей, которые допустить к использованию, описать, как они работают и взаимодействуют, а остальные запретить.
Есть где-нибудь пример такого стандарта, который можно внедрить? Питон прошу не предлагать. В негодности тикля для выполнения функций оболочки я уже сам убедился. Можно в качестве альтернативы рассмотреть просто sh, если он того достоин, но я не в курсе.