TARコマンドのCan't translate pathnameメッセージ 
2016/09/08 Thu.
日本語を含んだディレクトリやファイルをTARコマンドで圧縮しようとしたら
Can't translate pathname ~ to UTF-8
というメッセージがワーと出てくる。
しかも、出来上がった書庫ファイルを覗いて見たらファイル名が文字化けしてる。
本来のファイル名の文字コードはUTF-8であることを確認したし、なんだかなあと悩んだけど解決。
ロケール設定でした。
Can't translate pathname ~ to UTF-8
というメッセージがワーと出てくる。
しかも、出来上がった書庫ファイルを覗いて見たらファイル名が文字化けしてる。
本来のファイル名の文字コードはUTF-8であることを確認したし、なんだかなあと悩んだけど解決。
ロケール設定でした。
TARコマンドを扱うユーザーの環境設定ファイルにロケールを設定します。
現在のロケールを確認するコマンドは
LC_ALL
だけ設定すれば他の環境変数にも反映されます。
もし、個別に設定したい場合は「LC_ALL」は空白にしなければなりません。ここ試験に出ます。
FreeBSDでのロケールはこちらが詳しいです。
ということで、「.cshrc」ファイルに以下を追記
現在のロケールを確認するコマンドは
% locale
ロケール設定環境変数にはいろいろありますが、面倒で全部同じ設定にするならLC_ALL
だけ設定すれば他の環境変数にも反映されます。
もし、個別に設定したい場合は「LC_ALL」は空白にしなければなりません。ここ試験に出ます。
FreeBSDでのロケールはこちらが詳しいです。
ということで、「.cshrc」ファイルに以下を追記
setenv LC_ALL ja_JP.UTF-8
追記した後は有効にするため再度ログインするか、% source .cshrc
これでTARしてもメッセージが出なくなりました。が、ファイル日付とかが日本語表記になるのが気持ち悪いけど個別設定するのも面倒くさいのでこれでいいや。
- 関連記事
category: サーバー
この記事へのコメント
コメントの投稿
コメントは全て管理人が内容を確認してから表示されます(非公開コメント除く)。
内容によっては表示されない場合がありますことご了承願います。
内容によっては表示されない場合がありますことご了承願います。
« Windows7でWebDAVにネットワークドライブを割り当てるWSHスクリプトを書いてみた
トマトの摘心をやりました »