Wie ändere ich mein Gebietsschema in CentOS auf UTF-8?


9

Hier ist die Ausgabe von locale:

LANG=zh_CN.GBK
LC_CTYPE="zh_CN.GBK"
LC_NUMERIC="zh_CN.GBK"
LC_TIME="zh_CN.GBK"
LC_COLLATE="zh_CN.GBK"
LC_MONETARY="zh_CN.GBK"
LC_MESSAGES="zh_CN.GBK"
LC_PAPER="zh_CN.GBK"
LC_NAME="zh_CN.GBK"
LC_ADDRESS="zh_CN.GBK"
LC_TELEPHONE="zh_CN.GBK"
LC_MEASUREMENT="zh_CN.GBK"
LC_IDENTIFICATION="zh_CN.GBK"
LC_ALL=

Wie kann ich sie alle ändern UTF8? Wie kann ich die Gebietsschemaeinstellung in CentOS 5.5 beibehalten?

Antworten:


12

Versuchen Sie es in CentOS mit dem Befehl system-config-language. Das ist der CentOS-Weg :) Sie können auch versuchen mit:

localedef -c -f UTF-8 -i en_US en_US.UTF-8
export LC_ALL=en_US.UTF-8

wozu localedef -c -f UTF-8 -i en_US en_US.UTF-8?
— Gebietsschema

Es wird verwendet, um Ihr Gebietsschema für en_US und en_US.UTF-8 zu definieren
— boris quiroz

5

Red-Hat-ähnliche Distributionen (Centos, SL) werden mit einer Datei geliefert

/ etc / sysconfig / i18n

welches standardmäßig enthält (naja, in meinem Fall)

LANG = "en_GB"

SYSFONT = "latarcyrheb-sun16"

Die obige Datei wird von /etc/profile.d/lang.sh bezogen

In meinem Fall wollte ich en_GB.UTF-8 in en_GB.iso88591 ändern, daher stellte ich fest, dass die „richtige“ Vorgehensweise darin bestand, / etc / sysconfig / i18n mit anzuhängen

CHARSET = "iso8895-1"

Sobald dies erledigt ist, sollte das Gebietsschema für jedes Konto im System lauten:

me @ wark: ~ $ locale

LANG = en_GB.UTF-8

LC_CTYPE = "en_GB.iso88591"

LC_NUMERIC = "en_GB.iso88591"

LC_TIME = "en_GB.iso88591"

LC_COLLATE = "en_GB.iso88591"

LC_MONETARY = "en_GB.iso88591"

LC_MESSAGES = "en_GB.iso88591"

LC_PAPER = "en_GB.iso88591"

LC_NAME = "en_GB.iso88591"

LC_ADDRESS = "en_GB.iso88591"

LC_TELEPHONE = "en_GB.iso88591"

LC_MEASUREMENT = "en_GB.iso88591"

LC_IDENTIFICATION = "en_GB.iso88591"

LC_ALL = en_GB.iso88591


4

Meinst du in der aktuellen Sitzung oder dauerhaft?

Wenn Sie es nur in der aktuellen Shell benötigen, können Sie die LC_ALLVariable exportieren . Zum Beispiel:

export LC_ALL=en_US.UTF-8

Wenn Sie dies dauerhaft oder systemweit tun möchten, variiert dies von Verteilung zu Verteilung. Welches ist deines?


meins ist centos 5.5.
— Gebietsschema

Nur für die Sitzung, Wenn Sie das Element schließen, Nächste Anmeldung in LA_ALL = '' '
— Liebe

1

Da Sie nach Ihrer Kodierung Chinesen vom Festland sind, benötigen Sie zunächst das chinesische Gebietsschema:

localedef -i zh_CN -c -f UTF-8 zh_CN.UTF-8

Dann können Sie Ihr Gebietsschema exportieren als:

export LANG=zh_CN.UTF-8

Wenn Sie dies systemweit konfigurieren möchten:

Ändern Sie /etc/locale.conf in:

LANG=zh_CN.UTF-8
LC_COLLATE=zh_CN.UTF-8

Die zweite Zeile enthält Regeln zum Vergleichen von Zeichenfolgen.

Oder für einen Benutzer können Sie es einfach in Ihr ~ / .bashrc oder ~ / .profile einfügen


0

In CentOS 7 konnte ich die Standardsystemsprache durch Bearbeiten ändern

/etc/profile

Hier werden die folgenden Variablen gesetzt

export LANG="en_GB.utf8"
export LANGUAGE="en_GB.utf8"
export LC_ALL="en_GB.utf8"
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.