UNIX/Linuxの部屋 convmvコマンドの使い方

TOP UNIX/Linuxの部屋 UNIX/Linuxコマンド一覧 用語集 新版 由来/読み方辞書 環境変数マニュアル Cシェル変数 システム設定ファイル システムコール・ライブラリ ネットワークプログラミングの基礎知識 クラウドサービス徹底比較・徹底解説




コマンド convmv ファイル名のエンコーディングを変換する。 このエントリーをはてなブックマークに追加

ファイル名のエンコーディングを変換する (ファイル内容ではなく、ファイル名のエンコーディングであることに注意)。

例えば UNIX で UTF-8 のファイル名で zip アーカイブを作成し、Windows にて展開すると、Windows のエクスプローラでは文字化けしてしまう。そのようなときに convmv コマンドにてファイル名のエンコーディングを Shift_JIS に変えておく、などといった使い方をする。

convmv はファイル名を実際にリネームしてしまうので、実行後は変換元ファイル名ではアクセスできなくなる。慣れないうちは、変換元ファイルのバックアップをとっておくとよいだろう。

実行例
% convmv -f utf8 -t shift_jis *.txt
→ *.txt のファイル名を UTF-8 から Shift_JIS に変換するが、実際に変換せず表示のみ。
% convmv -f utf8 -t shift_jis *.txt --notest
→ --notest オプションを指定することで、実際にファイル名が変更される。

オプション
-f 変換元のエンコーディングを指定する。
-t 変換先のエンコーディングを指定する。
-r ディレクトリ配下までたどって変更する。-r を指定しない場合はディレクトリをたどらない。
--notest 実際にファイル名を変更する。--notest を指定しない場合は、表示のみ。
--list 使用可能なエンコーディングの一覧を表示する。この出力からエンコーディングを選んで、-f や -t に指定する。