Mi imbatto in molti script di shell con variabili in maiuscolo e ho sempre pensato che ci fosse un grave fraintendimento. La mia comprensione è che, per convenzione (e forse per necessità molto tempo fa), le variabili di ambiente sono in maiuscolo.
Ma nei moderni ambienti di scripting come Bash, ho sempre preferito la convenzione dei nomi minuscoli per le variabili temporanee e quelle maiuscole solo per le variabili esportate (ovvero l'ambiente) . Per esempio:
#!/usr/bin/env bash
year=`date +%Y`
echo "It is $year."
export JAVA_HOME="$HOME/java"
Questa è sempre stata la mia opinione sulle cose. Esistono fonti autorevoli che concordano o non sono d'accordo con questo approccio o è puramente una questione di stile?