红联Linux门户
Linux帮助

在Vi里面实现字符串的批量替换

发布时间:2015-03-07 10:33:12来源:linux网站作者:fangbo

在Vi里面实现字符串的批量替换。


a.文件内全部替换:

%s#abc#def#g(用def替换文件中所有的abc)

例如把一个文本文件里面的“linux.com”全部替换成“linux.net”:

:%s#linux.com#xwen.net#g (如文件内有#,可用/替换,比如:%s/linux.com/xwen.net/g)


b.文件内局部替换:

把10行到50行内的“abc”全部替换成“def”

:10,50s#abc#def#g(如文件内有#,可用/替换,:%s/abc/def/g)

以上命令如果在g后面再加上c,则会在替换之前显示提示符给用户确认(conform)是否需要替换。 比如

:%s#linux.com#linux.net#gc