2013-07-29 76 views
1

我需要爲每個字符串/行的實例替換一個字符串/行。 在下面一行:Linux - 替換字符串

set output "/DS/tmp/2.gnuplot.ps" 

我需要它是:

set output "./gnuplot.ps" 

我想用:

grep -rl 'stringONE' ./ | xargs sed -i 's/stringONE/stringTWO/g' 

,但是當我嘗試使用它,它有一個衝突與/中的字符串...

grep -rl '/DS/tmp/2.gnuplot.ps' ./ | xargs sed -i 's//DS/tmp/2.gnuplot.ps/./gnuplot.ps/g' 

任何幫助將不勝感激!

回答

1

如果要被替換的字符串包含斜槓(/),那麼你可以劃定的sed的指揮的論點別的東西,在這種情況下,我用逗號:

grep -rl '/DS/tmp/2.gnuplot.ps' ./|xargs sed -i 's,/DS/tmp/2.gnuplot.ps,./gnuplot.ps,g'