SSHで複数ファイルから文字列を検索・置換する方法

公開日:2018/03/04  最終更新日:2018/06/13  カテゴリー:SSH

SSHで複数ファイルから 文字列を検索・置換するコマンドを紹介します。
このコマンドのおかげで わざわざ検索対象のファイルをダウンロードしてソフトを使っていた手間が省け楽になりました。

1. 検索コマンド

コマンドを実行した ディレクトリ以下のすべてのファイルから `target` という単語を検索するコマンド。

find ./ -type f -print | xargs grep 'target'

2. 置換コマンド

コマンドを実行した ディレクトリ以下のすべてのファイルから `target` という単語を `replace` に置換するコマンド。

grep -rl "target" ./ | xargs perl -i -pe "s/target/replace/g"
/ がある場合は エスケープする必要がある
そのまま 記述するとエラーになりますので \ を前につける必要があります。
特に http:// などを含む 場合は 要注意です。

参考文献

本サイトでは URLに日本語を含んでいます。
メールなどで共有する場合は リンクとして認識されない場合がございますので、こちらをご利用ください。