Ich habe die Lokalisierungsdateien en_US.utf8 , et_EE.iso88591 und ru_RU.utf8 generiert . Wenn ich versuche, eine der Locale-Variablen in eine ru_RU.utf8 oder en_US.utf8 zu ändern , hat dies keine Auswirkung:
# locale -a
C
en_US.utf8
et_EE
et_EE.iso88591
POSIX
ru_RU.utf8
# LC_TIME=ru_RU.utf8
# locale | grep LC_TIME
LC_TIME="et_EE.iso88591"
# LC_TIME="ru_RU.utf8"
# locale | grep LC_TIME
LC_TIME="et_EE.iso88591"
#
Wenn ich jedoch die Variable LANG = ändere , nehmen alle anderen Variablen außer LANGUAGE = und LC_ALL = den Wert der Variablen LANG = . Gibt es eine Möglichkeit, jede Gebietsschemavariable separat zu ändern? Stimmt es außerdem, dass Gebietsschemavariablen keine regulären Shell-Variablen sind, sondern eher Parameter für das Dienstprogramm locale darstellen ?
LANG
undLC_xxx
sind Umgebungsvariablen? Meine Tests zeigen, dass nurLANG
undLANGUAGE
undLC_MESSAGES
undLC_ALL
Umgebungsvariablen sind, während andere Variablen Umgebungsvariablen mögenLC_CTYPE
undLC_MONETARY
nicht sind (auch, sie sind keine Shell-Variablen)?