sed 与 find 命令结合使用
目的: 把 / root/kang 目录下, 所有带有 *.sh 结尾的文件, 并且内容 oldboy 的字符串, 替换成 kang
- [root@localhost kang]# find /root/kang/ -type f -name "*.sh"|xargs
- /root/kang/nginx/abc.sh /root/kang/test.sh #查出总共有两个文件
- [root@localhost kang]# find /root/kang/ -type f -name "*.sh"|xargs cat #查看文件内容
- oldboy
- oldboy
- [root@localhost kang]# find /root/kang/ -type f -name "*.sh"|xargs sed 's#oldboy#kang#g' #查找替换, 并打印出来 (原文件并没有更改)
- kang
- kang
- [root@localhost kang]# find /root/kang/ -type f -name "*.sh"|xargs sed -i 's#oldboy#kang#g' #查找并替换原文件内容
- [root@localhost kang]# find /root/kang/ -type f -name "*.sh"|xargs cat
- kang
- kang
- [root@localhost kang]#
来源: http://www.bubuko.com/infodetail-2589170.html