このエントリーをはてなブックマークに追加


日本語が文字化けするコンソールをログイン時に英語出力にする方法

VirtualBoxなどでLinuxの仮想環境起動時のコンソールで日本語が文字化けする。
サーバに接続しているCUIコンソールで、日本語が化けてしまう場合の対処方法を紹介します。

尚、文字化けするコンソール(端末)で日本語を表示する方法ではなく、日本語表示できない端末の場合は、
英語表記にするスクリプトを.bashrcに追記する手順となります。


使用したLinux

$ lsb_release -dr
Description:    Debian GNU/Linux 10 (buster)
Release:        10

$TERMの値によりLANGを設定する

VirtualBox上で動作しているDebianのコンソールでdateコマンドを実行したときのキャプチャです。
日本語が文字化けしています。
LANGの値を確認すると ja_JP.UTF-8 となっているため、日本語メッセージを出力しようとして文字化けしています。
そのあと、LANGにCを設定し、実行すると英語出力となるため、当然文字化けしません。

20191114-01.png
 

.bashrcに追記するスクリプト

ターミナル名称が設定される $TERM の値でLANGを設定するスクリプトになります。
これを.bashrcの一番最後に追記しました。

case $TERM in
  linux)
    LANG=C
    ;;
esac

ちなみにTera TermやCygwinのminttyでssh接続すると、TERMの値は、xtermとなっています。

$ echo $TERM
xterm

コンソールのTERMを確認すると、linuxとなっています。

$ echo $TERM
linux

これを利用し、TERMがlinuxの時は LANG=C として英語出力になるように設定しました。

以上、コンソールで文字化けするときの対応方法の紹介でした。



添付ファイル: file1.png [詳細] file01.png [詳細]

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2019-11-14 (木) 01:34:52