web-dev-qa-db-ja.com

LinuxでSEDを再帰的に使用しますか?

次のコマンドを再帰的に実装したい

sed -i 's/href=\"1\//href=\"\/1\//g' ./*

これにより、すべてのサブディレクトリですべてのhref = "1がhref ="/1に置き換えられます。希望する結果を達成するためにこのコマンドに追加できるフラグはありますか?

4
John
find . -type f -print0 | xargs -0 sed -i 's/href=\"1\//href=\"\/1\//g'
13
topdog

https://stackoverflow.com/a/5130044/833771 ごとに、ターゲットディレクトリがGitまたはSVNルートの場合は、次を使用する必要があります:find . -not \( -name .svn -Prune -o -name .git -Prune \) -type f -print0 | xargs -0 sed -i 's/href=\"1\//href=\"\/1\//g'

0
Pr0methean