この状況は通常、中国語の言語パックをインストールしていないか、デフォルトの言語を設定していることが原因です。
現在のロケールを表示
echo $LANG
として見つかった
zh_TW.UTF-8
ただし、中国語パックがインストールまたは有効化されていない場合、文字化けした文字が表示されます
LANG = en_US
と入力すると、設定が英語で表示されます。このコマンドはすぐに有効になりますが、永続的に有効にすることはできません。永続的な効果については、以下を参照してください。
この時点で、コマンドをもう一度入力して、英語のエラーメッセージを表示します
中国語のプロンプトが必要な場合は、次のようにインストールできます。
yum groupinstall chinese-support
ローカルのデフォルトロケールを設定する
vim / etc / locale.conf
が追加されました
LANG=“zh_TW.UTF-8”
インスタントで永続的
source /etc/locale.conf
locale
と入力して、ローカル言語環境を表示します
LANG=zh_TW.UTF-8
LC_CTYPE="zh_TW.UTF-8"
LC_NUMERIC=zh_TW.UTF-8
LC_TIME=zh_TW.UTF-8
LC_COLLATE="zh_TW.UTF-8"
LC_MONETARY=zh_TW.UTF-8
LC_MESSAGES="zh_TW.UTF-8"
LC_PAPER=zh_TW.UTF-8
LC_NAME="zh_TW.UTF-8"
LC_ADDRESS="zh_TW.UTF-8"
LC_TELEPHONE="zh_TW.UTF-8"
LC_MEASUREMENT=zh_TW.UTF-8
LC_IDENTIFICATION="zh_TW.UTF-8"
LC_ALL=
私のロケールはTaiwanTraditionalであり、ChineseSimplifiedはTWをCNに変更する必要があることに注意してください
付録:セントスのutf-8エンコーディング形式のシェルスクリプトで中国語の文字化けしたコードを解決する方法を見てみましょう
問題現象
自分で作成したシェルスクリプト。保存されたエンコード形式はutf-8ですが、centosにアップロードすると、文字化けして表示されます。
file shell.sh
を使用して、ファイルのエンコード形式を表示します
shell.sh: UTF-8 Unicode text
解決
iconvを使用して、ファイルのエンコード形式をgb2312に変換します
iconv -f utf-8 -t gb2312 shell.sh > shell2.sh
ファイルエンコーディングを表示するには、shell2.shを再度ファイルします
linuxsec2.sh: ISO-8859 text
中国の文字化けした問題が解決しました