Я пытаюсь отредактировать файл конфигурации и хочу добавить определенную строку кода (в новой строке) всякий раз, когда соответствующая строка сопоставляется... все, что я искал, выполняет поиск и замену, я ищу для поиска и добавления...
Поиск строки и добавления строки в vi/vim
Ответ 1
В vim
\r
находится новая строка. Итак, вы можете сделать что-то вроде этого
%s/search string/&\rnew code/
Ответ 2
лично, я думаю, что использование команды ": 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".
Ответ 3
Это то, что я сделал бы:
:g/specific string/s/.*/&specific line of code
Команда g
извлекает все строки, содержащие specific string
, а затем применяет команду подстановки s
к этим строкам. Команда s
заменяет всю строку своим содержимым плюс specific line of code
НТН