平常需要替换多个文件里的内容,通过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/*`