現在のディレクトリ以下のファイルすべてに対してテキスト置換


このエントリーをはてなブックマークに追加

zshの**を使った再帰検索と、sedを組み合わせると一行で書ける。 以下は、現ディレクトリ、またはその下にあるすべてのサブディレクトリに存在する、すべてのPythonファイルに対して、文字列beforeを文字列afterに書き換える例。

sed -i 's/before/after/g' **/*.py

乱暴なコマンドなので、ご使用の際はくれぐれも自己責任でお願いします。

参考

sedとxargsで特定文字列を一括置換 - プログラマになりたい