在linux中递归查找并替换文件中的文本

时间:2015-01-26 04:51:54

标签: linux sed

我需要在我的网络服务器上的所有文件中查找并替换部分文本。我知道这个命令(通过谷歌来)

find . -type f -exec sed -i 's/foo/bar/g' {} +

问题是我需要替换的文本中包含/。比如我需要......

查找

/home/this/root/

使用

/home/that/root/

因为上面的命令使用/作为分隔符来确定find/replace如何在搜索中包含/所以命令不会混淆?

1 个答案:

答案 0 :(得分:3)

使用其他sed分隔符。

find . -type f -exec sed -i 's~foo~bar~g' {} +