使用sed命令可以进行字符串的批量替换操作,以节省大量的时间及人力;
使用的格式如下:
sed -i "s/oldstring/newstring/g" `grep oldstring -rl path`
其中,oldstring是待被替换的字符串,newstring是待替换oldstring的新字符串,grep操作主要是按照所给的路径查找oldstring,path是所替换文件的路径;
-i选项是直接在文件中替换,不在终端输出;
-r选项是所给的path中的目录递归查找;
-l选项是输出所有匹配到oldstring的文件;
实例:
1. 替换指定文件的字符串
sed -i "s/oldstring/newstring/g" filename
sed -i "s/6/sk/g" ./test01.txt


2. 字符串替换批量文件操作
sed -i "s/6/sk/g" ·grep 6 -rl /home/work/test`
sed -i "s/6/sk/g" ·grep 6 -rl /home/work/test/*.sh`
可将test目录下的所有相关文件都进行字符串替换
参考:
1.http://blog.163.com/daniel_ao/blog/static/1100988432010722642551/
本文详细介绍了如何使用sed命令进行字符串的批量替换操作,通过具体的实例演示了如何在指定文件或多个文件中替换字符串,包括如何使用grep命令配合sed进行递归查找并替换。文章还提供了相关参考链接。
626

被折叠的 条评论
为什么被折叠?



