请稍侯

使用sed命令进行文本替换

2015-05-29

事出有因

最近产品同学需要修改一个问题,将项目里的一个“XX”文字替换为另一个文字,刚开始的时候就苦逼苦逼的一个页面一个页面的改。

一个小时。。。。两个小时。。。

忽然觉得,这不科学啊,有没有更好的方法呢?

这个时候才想起,linux下不是有一个sed命令么。

赶紧百度下学习学习。

sed回顾

sed是一个很好的文本处理工具,以行为单位进行处理,可以将数据行进行替换,删除,新增。

sed 命令行的格式:

sed [-nefri] 'command' 输入文本

具体的参数代表的含义在这里就不一一介绍了,同学们可以自行百度。

这里主要讲讲 -i 参数

-i 直接修改读取的档案内容

sed命令

sed 的 ‘command’。

如果我们想要替换一个文件中的内容,该如何做呢?

# s 代表 使用string 替换正则表达式 re
# g 代表全部替换
sed 's/re/string/g' file

问题解决

学习了一点,如何解决咱的问题呢?一个命令全搞定

# cd 进入要修改文件的文件夹
find . -name "*.jsp" -print0|xargs -0 sed -i 's/原字符串/新字符串/g'

如果你是mac系统,请使用下面的命令

find . -name "*.jsp" -print0|xargs -0 sed -ig 's/原字符串/新字符串/g'

好了,问题完美解决,只需要10分钟。

同样的一个问题,我们需要找到最快速,简单的方法。

参考链接

http://www.iteye.com/topic/587673

http://www.cnblogs.com/dong008259/archive/2011/12/07/2279897.html

http://www.netingcn.com/mac-osx-sed-command-expects-followed-by-text.html

本文由 vvkee 创作,转载请注明原文链接。