ファイルの文字コード一括変換
% find . -name "*.txt" | xargs -t -I % -R 1 -- nkf --oc=UTF-8 --overwrite=".bak" % -t 実行するコマンドを表示 -I % % が置換される -R 1 置き換えられる引数の数 -- xargsの引数がこれで終わることを示す
たぶん昔xargsすごいよ!みたいなエントリーがあったような気がしたんだけどようやく使い方を把握。昔だったらfor文使ってたと思う。
ちなみにこの方法だと1つずつコマンド実行するのでcpとかは次のようにした方が効率がいいはず。
(例)カレントディレクトリ以下の大文字で始まるファイル・ディレクトリをコピー (manより
% ls -1d [A-Z]* | xargs -J % cp -rp % destdir