Wie kann ich zu meinem ursprünglichen Gebietsschema (nl_NL) zurückkehren, wenn ich LC_ALL = C (für die englische Ausgabe in der Befehlszeile) festgelegt habe?

7

Ich habe nützliche Beiträge zu LC_ALL = C gesehen und Probleme mit den Gebietsschemaeinstellungen behoben , aber diese sehen für mich etwas zu kompliziert aus.

In einer Sitzung, die mit begann, LC_ALL=C bashhabe ich das Offensichtliche ausprobiert LC_ALL=nl_NL, aber das gab Warnungen, daher bin ich mir nicht sicher, ob dies der richtige Weg ist, wenn ich LC_ALL=C(ohne bash) einstelle.

cor4office
quelle
5
Haben Sie versucht, es einfach auf die leere Zeichenfolge zu setzen, dh LC_ALL=? AFAIK es ist in der Regel standardmäßig nicht gesetzt - nur wenn gesetzt, überschreibt es die einzelnen Gebietsschema-Variablen wie LC_NUMERIC, LC_MESSAGESetc.
Steeldriver
Ein weniger aufdringlicher Weg, um englische Ausgabe im Terminal zu erhalten, istLANGUAGE=en_US
Gunnar Hjalmarsson
Nach LC_ALL = C zeigt das Gebietsschema für mich immer noch "LC_ALL =" an. Nachdem ich LC_ALL = C und dann LC_ALL = nl-NL angewendet habe, bemerkte ich die Befehlszeilenausgabe mit falschen Sonderzeichen, wobei UTF-8 anscheinend fehlte. Vielleicht hätte ich LC_ALL = nl-NL.UTF-8 verwenden sollen. Kann es versuchen.
Cor4office
Es ist nl_NL.UTF-8- mit einem Unterstrich, nicht einem Strich.
Gunnar Hjalmarsson
Möglicherweise müssen Sie eingeben, export LC_ALL=Cum localedas erste Mal zu ändern
Zanna

Antworten:

10

@steeldriver ist nicht überraschend richtig. Alles was Sie tun müssen, ist

LC_ALL=

um alle Ihre normalen Gebietsschemaeinstellungen für die Sitzung wiederherzustellen.

Beispiel:

$ export LC_ALL=C
$ locale
LANG=en_GB.UTF-8
LANGUAGE=en_GB:en
LC_CTYPE="C"
LC_NUMERIC="C"
LC_TIME="C"
LC_COLLATE="C"
LC_MONETARY="C"
LC_MESSAGES="C"
LC_PAPER="C"
LC_NAME="C"
LC_ADDRESS="C"
LC_TELEPHONE="C"
LC_MEASUREMENT="C"
LC_IDENTIFICATION="C"
LC_ALL=C

Einstellung LC_ALL=stellt die ursprünglichen localeEinstellungen wieder her

$ LC_ALL=
$ locale
LANG=en_GB.UTF-8
LANGUAGE=en_GB:en
LC_CTYPE="en_GB.UTF-8"
LC_NUMERIC=en_GB.UTF-8
LC_TIME=en_GB.UTF-8
LC_COLLATE="en_GB.UTF-8"
LC_MONETARY=en_GB.UTF-8
LC_MESSAGES="en_GB.UTF-8"
LC_PAPER=en_GB.UTF-8
LC_NAME=en_GB.UTF-8
LC_ADDRESS=en_GB.UTF-8
LC_TELEPHONE=en_GB.UTF-8
LC_MEASUREMENT=en_GB.UTF-8
LC_IDENTIFICATION=en_GB.UTF-8
LC_ALL=
Zanna
quelle
1
Auf unserer Schwesterseite gibt es einige nette Diskussionen. Was macht "LC_ALL = C"?
Steeldriver
@steeldriver Danke, dass du das hinzugefügt hast. Ich habe gesehen, wie es die verlinkten Beiträge des OP gelesen hat. Sehr aufschlussreich :)
Zanna
6

Der wahrscheinliche Grund, warum LC_ALL=nl_NLSie gewarnt wurden, ist, dass dies nl_NLein Gebietsschema zum Aktivieren der ISO-8859-1-Codierung ist und normalerweise nicht auf einem Ubuntu-System generiert wird. LC_ALL=nl_NL.UTF-8sollte arbeiten. Wie andere gesagt haben, LC_ALL=funktioniert es auch (dh es zu deaktivieren).

Gunnar Hjalmarsson
quelle