例えばディレクトリ内のHTMLファイル全てに対して置換を行いたい場合1個1個ファイルを開いて編集するのは面倒なので、一発で行いたい。
find . -name "*.html" -exec sed -i 's/元テキスト/置換後テキスト/' {} \;
何をしているのか細かく説明すると
find . -name "*.html" -exec
このディレクトリ(.)の中にある名前が*.htmlにマッチするファイルに対して
sed -i 's/元テキスト/置換後テキスト/' {} \;
上書き保存で(-i) 元テキストを置換後テキストに変更する
となる。
ちなみに {} はfindの結果で得た(この場合はhtmlファイルのファイル名)が入るようになっている。
0 comments:
コメントを投稿