Если вам нужно только сообщение, когда оно не установлено, то:
if [ -z "${CHOSEN_ENV_VAR}" ]
then echo "CHOSEN_ENV_VAR was not set but should have been" >> log.file
fi
Если вы просто хотите, чтобы скрипт остановился и отправил отчет о stderr, тогда:
: ${CHOSEN_ENV_VAR:?'was not set but should have been'}
(Вы можете проверить это в интерактивной оболочке, но интерактивная оболочка не выйдет. Поместите ее в сценарий, и сценарий будет завершен.)