铁石高原,蓝狐第二部,非常好听的英文歌
grep -rl “str1” dir | xargs sed -i ‘s/str2/str3/g’
意思就是把dir路径下面,还有子文件夹里面的所有包含‘str1’的文件里的‘str2’替换为‘str3’
当str1和str2相同时,就是批量查找和替换了
另外
grep -rl “str1” dir
就是显示dir下所有包含str1字符串文件的路径
但是有时候上面提到的语句并不好用,因为第一个必须要把双引号全部转义,第二个填充字符串的地方必须把斜杠全部转义,有时候如果要替换html标签会很麻烦,所以这里再提供另外一种方法
rpl命令,需要安装rpl
sudo apt-get rpl rpl "str1" "str2" ./*
就会将当前目录下所有文件中str1替换为str2,只需要把双引号转义就行,很方便
Mac用户需要注意, OS X上的sed和类似ubuntu这种linux上的sed是不同的, 要求在sed -i后面跟一个字符串, 用来备份. 如果留空就不备份, 所以可以写成下面这样
grep -rl “str1” dir | xargs sed -i “” ‘s/str2/str3/g’
如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复
小白安装登录mysql-8.0.19-winx64的教程图解(新手必看)
Navicat连接MySQL时报10060、1045错误及my.ini位置问题
网友评论