座敷牢日誌

都落ちした元SEがソフトウェアやネット関連のことを書いています

コマンド実行の結果を英語表記にする

環境によって、コマンド実行の結果に日本語が含まれることがあり、パイプして処理した いときなどに都合が悪いことがある。

% diff -crN dir1 dir2
バイナリファイル 1.bmp と2.bmp は異なります

例えば、diff で比較した結果からバイナリの差分がある旨の出力を除外したいときな ど。もちろん、素直に % diff -crN dir1 dir2 | grep -v "^バイナリ" でも問題ないが、 ターミナルで作業するときにIMを使わないほうが効率的だと思う。

コマンドの直前で環境変数 LANG を設定すると、そのコマンド実行時のみ有効な環境変 数を指定できる。

% LANG=C diff -crN dir1 dir2
Binary files 1.bmp and 2.bmp differ

コマンド実行直後に echo $LANG とするとわかるが、コマンド実行前の値と変わってい ないはずだ。

% LANG=C diff -crN dir1 dir2 | grep -v "^\<Binary\>" このほうが精神衛生上よろ しいかなと思う。

広告を非表示にする