多くのファイルを「検索して置き換える」方法は?


11

grepコマンドを使用して、多くのファイルで文字列を検索します。「検索と置換」に似たものはありますか?

回答:


19

sedコマンドを探しています。たとえば、現在のディレクトリのすべてのテキストファイルで「dog」を「cat」に置き換えるには、次のようにします。

sed -i 's/dog/cat/' *.txt

1
シンプルでいい。
Luis Alvarado

1

sedが思い浮かびます。例:

sed s/cat/dog/ <input >output

これは、行で猫を検索し、犬をファイル入力のその場所に置き、ファイル出力に書き込みます。



0

VimはExモードで使用できます。

for b in *.txt
do
  ex -sc '%s/OLD/NEW/g|x' "$b"
done
  1. % すべての行を選択

  2. s 代替

  3. g 各行のすべてのインスタンスを置き換える

  4. x 保存して閉じます

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.