【Linux FAQ】コマンドやアプリを「英語モード」で実行するにはどうしたらいいですか? | Linux Fan

【Linux FAQ】コマンドやアプリを「英語モード」で実行するにはどうしたらいいですか?

2018年8月8日

Linuxアプリやコマンドを、一時的に「英語モード」で実行する方法を、初心者にも分かりやすく解説します。

日本語のLinuxデスクトップを使っている場合、翻訳されているアプリならばメニューなどの文字は「日本語」で表示されます。端末アプリでコマンドを実行した場合も、日本語で各メッセージを出力されることは珍しくありません。これは、Linuxサーバーでロケールを「ja_JP.utf8」に設定している場合も同様です。

このページでは、メッセージを「英語」で表示するモードでアプリやコマンドを実行する方法を解説します。

デスクトップアプリを英語モードで実行する

「英語モード」で起動するには、アプリを起動するコマンドの頭に「LANG=C」をつけて実行するだけです。
以下は、LibreOfficeを「英語モード」で起動する例です。

LANG=C libreoffice

このように実行すれば、以下のようにLibreOfficeが英語で起動します。

コマンドを英語モードで実行する

端末内で実行するコマンドも、頭に「LANG=C」をつけることで「英語モード」になります。

以下は、「date」コマンドが日本語で結果を出力する例です。

$ date
2018年  8月  8日 水曜日 12:10:28 JST

頭に「LANG=C」をつけると、以下のように出力が英語になります。

$ LANG=C date
Wed Aug  8 12:10:28 JST 2018

日本語訳では意味が分からないので英語で読みたい時や、英語のエラーメッセージでWeb検索をしたい時に、この方法を使うと便利です。

英語のマニュアルページを参照する

man」コマンドで日本語のマニュアルページが表示される環境を使っている人も多いでしょう。
日本語のマニュアルページは便利ですが、たまに翻訳の意味が分からなかったり、古い版の翻訳だったりすることもあります。そんな場合は、英語のマニュアルページを参照したくなることもあるでしょう。

そんな場合も、やはり頭に「LANG=C」をつけてmanコマンドを実行することで、日本語ではなく英語のマニュアルページを表示させることもできます。

LANG=C man コマンド名

文字化けする場合には

LANG=C」をつけて実行したコマンドが、日本語などのデータを読み込んで表示した場合、文字化けすることがあります。たとえば以下のコマンドを実行すると、vimが出す各メッセージは英語になりますが、日本語のテキストは文字化けしてしまいます。

LANG=C vim 日本語を含むファイル.txt

こうした場合、「LANG=en_US.utf8」あるいは「LANG=C.UTF-8」を頭に付けると文字化けしなくなります。

LANG=en_US.utf8 vim 日本語を含むファイル.txt

環境変数「LANG」を設定しても有効にならない場合は「LC_ALL」を使う

通常の日本語環境では、環境変数「LANG」で日本語ロケールが設定されているため、「LANG」さえ変更すればプログラムの出力は英語になります。
ただし、環境変数「LC_ALL」が設定されていたり、カテゴリーごとにロケールを設定する「LC_」で始まる環境変数が設定されていたりすると、「LANG」を設定しても「英語モード」にならないことがあります。

そのような場合は、環境変数「LC_ALL」に「C」や「C.UTF-8」を設定すると良いでしょう。

LC_ALL=C コマンド
LC_ALL=C.UTF-8 コマンド

ロケール環境変数の種類や優先順位については、以下の記事を参照してください。