Видел в чужих скриптах такую конструкцию для обработки и оповещении о переменных, которые не были определены:
FIRST="${1:?}"где знак вопроса ? заставляет bash выкинуть ошибку такого рода, если переменная не была определена:
./test.sh: line 2: 1: parameter null or not setПроблема в том, что при использовании такого подхода придется каждую переменную оборачивать в такую констукцию.
My approach
set -ucuz:
-u Treat unset variables as an error when substituting.Как выглядит ошибка:
./test.sh: line 3: $1: unbound variable