sed 批量替换多个文件

时间:2021-03-29 09:03:40

平常需要替换多个文件里的内容,通过sed命令就可以很方便的替换。

sed -i “s/原字符串/新字符串/g”  `grep  -rl  原字符串 所在目录`
解释:
1. sed -i  :  直接替换文件内容。
2.  sed's/要被取代的字串/新的字串/g' 这种模式是一种替换模式,但是这样是直接输出,不会修改文件;要修改文件,需要加上-i.
3. grep -r 搜索子目录查找 , -l 表示输出匹配到的文件名。
4. 反引号`` ,是将里面的字符串当做命令执行。

例子: 替换h目录所有文件的listen  ,替换为:listen_new

sed -i 's/listen/listen_new/g'  `grep -rl listen  ./h/*`