shell替换文件内容

由于工作需要,需将之前文本中所记录的电话全部替换成新的电话,操作如下:

1. 找到项目,查看有哪些文件有该字符串

grep -r "52776822" *

 2. 找到这些文件所属的顶级目录,然后进行替换

find . -name "*.htm" -print0 |xargs -0 sed -i 's/52776822/77777777/g'

 3. 查看是否替换成功即可

4. 若不保险,清先备份一份做测试

  cp -rf static static_bak

P.S.

xargs 把find命令的结果作为perl的参数。

find的参数-print0和xargs的参数-0是防止文件名中有空格或新行造成错误,可以man xargs获得帮助。 

猜你喜欢

转载自genggeng.iteye.com/blog/1195692
今日推荐