Die meisten Sprachen haben Namenskonventionen für Variablen. Der häufigste Stil, den ich in Shell-Skripten sehe, ist MY_VARIABLE=foo
. Ist das die Konvention oder gilt sie nur für globale Variablen? Was ist mit lokalen Variablen im Skript?
Antwort1
Umgebungsvariablen oder Shell-Variablen, die vom Betriebssystem, Shell-Startskripten oder der Shell selbst usw. eingeführt werden, stehen normalerweise alle in CAPITALS
1 .
Um Konflikte zwischen Ihren Variablen und diesen Variablen zu vermeiden, empfiehlt es sich, lower_case
Variablennamen zu verwenden.
1 Eine bemerkenswerte Ausnahme, die wissenswert sein könnte, ist das path
von der Shell verwendete Array zsh
. Dies ist dasselbe wie die allgemeine PATH
Variable, wird jedoch als Array dargestellt.
Antwort2
Ja, es gibt vollständige Codestilkonventionen für Bash, einschließlich Variablennamen. Hier ist beispielsweise GooglesShell-Styleguide.
Als Zusammenfassung speziell für die Variablennamen:
Variablennamen: Kleinbuchstaben, mit Unterstrichen zur Trennung von Wörtern. Beispiel:
my_variable_name
KonstantenUndNamen von Umgebungsvariablen: Alles in Großbuchstaben, durch Unterstriche getrennt, am Anfang der Datei deklariert. Beispiel:
MY_CONSTANT
Antwort3
Unterstriche zur Trennung von Wörtern scheinen die beste Lösung zu sein.
Ich habe ein paar Gründe, snake_case gegenüber camelCase zu bevorzugen, wenn ich die freie Wahl habe:
- Flexibel: Sie können Groß- und Kleinbuchstaben verwenden (z. B.
MY_CONSTANT
undmy_variable
); - Konsistent: Die Ziffern können getrennt werden, um die Zahl lesbarer zu machen (z. B.
1_000_000_000
), und diese Funktion wird in vielen Programmiersprachen unterstützt. - Gemeinsam: Gemeinsam an der Stelle, an der der reguläre Ausdruck
\w
Unterstriche wie Wortzeichen und Zahlen behandelt ([a-zA-Z0-9_]
).