sedとgrepで、あるディレクトリ以下のファイル中の文字列一括置換

ディレクトリ以下の、文字列を含むファイルのうち、一部のファイルを除く全てのファイルを対象に、文字列置換を一括処理をする。
今回は.svnなど置換したくないものを省いた。

% grep -lr 文字列 * | grep -v '*/.svn/*(対象外のパス)' | 
xargs sed -i 's/文字列/置換後の文字列/g'

grepの-lオプションでマッチするファイル名だけ出力。
grepの-vオプションはファイルリストから除外したい文字を入力。sedの-iオプションで一括置換。