linux sed 批量替换多个文件中的字符串:
sed -i "s/oldstring/newstring/g" `grep oldstring -rl yourdir`
例如:替换/home下所有文件中的www.linux.net为 linux.net
sed -i "s/www.linux.net/linux.net/g" `grep www.linux.net -rl /home`
这个` 符号是tab键上边,数字1左边的那个,不是单引号 '
如果所有待处理的文件都在一个文件夹下,可以这么写。
如果所有待处理的文件处于多个文件夹下,这样写会报错,因为sed无法处理文件夹,必须加上 "grep -rl",这样可以跳过文件夹而直接列出文件。