Я сталкивался со многими сценариями оболочки с переменными во всех заглавных буквах, и я всегда думал, что с этим есть серьезное недоразумение. Насколько я понимаю, условно (и, возможно, по необходимости давно) переменные среды указаны в верхнем регистре.
Но в современных средах написания сценариев, таких как Bash, я всегда предпочитал использовать строчные имена для временных переменных, а заглавные только для экспортированных (то есть окружающих) переменных . Например:
#!/usr/bin/env bash
year=`date +%Y`
echo "It is $year."
export JAVA_HOME="$HOME/java"
Это всегда был мой взгляд на вещи. Существуют ли авторитетные источники, которые либо соглашаются, либо не соглашаются с этим подходом, или это просто вопрос стиля?