sedによる一括置換ワンライナー

目次

1. 標準的なUnix系コマンド類でsedによる一括置換を行う例

カレントディレクトリ以下のテキストファイルについて、文字列の一括置換を行うコマンド例です。 GNU/Linux系のメジャーなディストリビューションで動作確認しています。

TARGET_STRING を置換対象文字列に、 AFTER_SUBSTITUTE を置換後文字列に、 それぞれ置き換えてコマンドを発行してください。

環境ごとのオプション仕様の差異やコマンド出力内容の相違によって意図しない結果になることが予想されるため、 初回実行時はパイプライン各段の出力確認とsed実行前のバックアップ作成をおすすめします。

grep -r 'TARGET_STRING' . | cut -d: -f1 | sort | uniq | xargs sed -i 's/TARGET_STRING/AFTER_SUBSTITUTE/g'