搜索字符串并在vi / vim中添加行

时间:2012-01-26 23:43:51

标签: vim vi

我正在尝试编辑配置文件,并希望在匹配特定字符串时添加特定的代码行(在换行符上)...我搜索过的所有内容都会进行搜索和替换,我正在寻找搜索和追加...

3 个答案:

答案 0 :(得分:16)

个人而言,我认为对于这个问题,使用“:g”命令可能比“:s”更好。

:g/key/norm owhat ever you want

将制作文字:

foo
bar
key
foo2
bar2
key2
blah

为:

foo
bar
key
what ever you want
foo2
bar2
key2
what ever you want
blah

如果要在包含模式的行上方添加新行,只需将小“o”更改为“O”。

答案 1 :(得分:13)

vim \r是新行。所以你可以做这样的事情

%s/search string/&\rnew code/

答案 2 :(得分:0)

这就是我要做的事情:

:g/specific string/s/.*/&specific line of code

g命令获取包含specific string的所有行,然后将s替换命令应用于这些行。 s命令将整行替换为其内容加上specific line of code

HTH