本サイト/記事は移転しました。

約10秒後にリダイレクトします。

特定の文字列を含まないファイルを編集

 文字コード指定が抜けているサブディレクトリのhtmlを一気に編集しようとして考えた。検索は

# find . -type f -name '*.html' -print | xargs grep -l 'UTF-8'

 でいけた。これをエディタに渡すには‥‥。vzエディタやwzエディタでは検索結果表示画面からキー一つで開くことができたけど、geditにそんな画面があるかどうかは知らない。もしかしたらコマンド実行ウィンドウとかからできるかもしれないが。
 で、ちょっと考えたら、バッククォーテーションで囲って実行結果を渡してれやればいけるかもとひらめいた。

# gedit `find . -type f -name '*.html' -print | xargs grep -L 'UTF-8'`

 期待通りの動作。

いろいろ試してみたらfindやxargを使わなくてもgrepだけでいけた。

# grep -Lr 'UTF-8' ./*/*.html

 ただしディレクトリ階層の深さが決まっている場合限定。