0

を検索し、ディレクトリの下で再帰的に別のものstring置き換えたいと思います。string例:文字列を検索したい

"var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");"

置き換えます

var _gaq = _gaq || [];_gaq.push(['_setAccount', 'UA-7044592-1']);_gaq.push(['_setDomainName', 'news4u.com']);_gaq.push(['_trackPageview']);

それを達成する方法は?

4

1 に答える 1

0

findすべてのファイルを検索し、xargs実行sedしてそれらを変更するために使用します。

find dir -type f | xargs sed -i.bak 's#from#to#'

dirの下にあるすべてのファイルを検索し、 fromtoに置き換え、拡張子「.bak」を持つ元のファイルをバックアップします

NB fromは基本的な正規表現であるため、検索する文字列内の BRE メタ文字をエスケープする必要があります。単一のファイルで sed コマンドをテストして、動作させることをお勧めします。

sed 's#from#to#' file > test.out

これにより、ファイルが置き換えられますが、ファイルを変更する代わりに、出力がtest.outに書き込まれるため、結果を確認できます。

于 2012-07-09T09:15:40.597 に答える