Command

一括iconv(文字コード変換)

投稿日:

文字コード変換には、Linuxのコマンド iconv が使える。

iconv -f EUC-JP -t UTF-8 元のファイル.html
iconv -f EUC-JP -t UTF-8 -o 変換後ファイル名.html 元のファイル.html

など。

ここで、ファイル1個ずつじゃなくて、まとめて変換したいときは?

find -exec で、元のファイルを書き換えてしまってよかったら、こんなふうにできる。

$ find /tmp/www -name "*.html" -exec bash -c 'echo {} && iconv -t utf8 -f eucjp {} > {}.new && mv {}.new {}' \;

{}の場所には検索したファイル名が入る。; はコマンドの終了を表すが、シェルに「;」を解釈させず、find へ「;」を渡すためにエスケープしてある。また、「{}」と「\」の間には必ずスペースを空けなくてはならない。

-Command

執筆者:


comment

メールアドレスが公開されることはありません。

関連記事

no image

qmail調整例

example.com のWebサーバーで、 メールサーバーが稼働しているが、 @example.comのメールは別のサーバーとなっているとき。 Webサーバーが、自分がメールサーバーでもあると思って …

no image

grepで”マッチしない”行を探す

grep コマンドで、「マッチする行」を探すには抗します。 $ grep ‘Mozilla’ /var/log/apache2/access.log マッチしない行を探すときは -v オプションを使い …

no image

プロセスが開いているファイルディスクリプタ数を調べる

例)sambaでつかんでいるファイルを確認したい 例)apacheがつかんでいるログファイルがどれか確認したい そんなとき。 プロセスIDはわかっている前提で。 ・lsofで lsof -p プロセス …

no image

ファイル名が同じで拡張子違いのファイルをマージする(1)

あるディレクトリに、以下の3種類の拡張子のファイルが混在しているとき、 *.jpg *.JPG *.gif 以下のようなことをすることになり、 ・jpgがあればjpgをのこす。 ・JPGと同じファイル …

no image

findで更新の条件で古いファイルや新しいファイルを探す

・更新日が3日前より新しい(現在時間〜72時間前) $ find . -mtime -3 ・更新日がちょうど3日前(72時間前〜96時間前) $ find . -mtime 3 ・更新日が3日前より古 …