質問: コマンドラインから再帰的な検索と置換を行うにはどうすればよいですか? bashやzshellなどのシェルを使用して、再帰的な「検索と置換」を行うにはどうすればよいですか。つまり、このディレクトリとそのサブディレクトリ内のすべてのファイルで、出現するすべての 'foo'を 'bar'に置き換えます。
回答: これは私がこれに使用する私のzsh/perl関数です:change () { from=$1 shift to=$1 shift for file in $* do perl -i.bak -p -e "s{$from}{$to}g;" $file echo "changing $from to $to in $file" done } そして私はそれを使用してそれを実行すると思います$ change foo bar **/*.java (例えば)