我有一个包含大量数据的文件,例如:
NULL
我想在包含something_id: someId
something_version: someVersion
something_log: someLog
something_log
的每一行之前添加一行文字
我该怎么做?任何帮助将不胜感激!
答案 0 :(得分:6)
在Vim中,您可以使用:help :global
和:help :put
:
:g/something_log/put!='something_test: example1'
答案 1 :(得分:4)
您可以使用i
的sed命令 insert 。
/something_log/
的第一部分是匹配的模式。
然后i
告诉它在匹配行之前插入以下文本。
sed '/something_log/ i something_test: example1' <file>
答案 2 :(得分:1)
使用GNU sed及其s
命令:
sed 's/something_log/something_test: example1\n&/' file
输出:
something_id: someId something_version: someVersion something_test: example1 something_log: someLog
&
:重复匹配的部分
答案 3 :(得分:1)
在s
中,您可以使用:%s/something_log/something_test\:example1\rsomething_log/g
命令:
\r
假设%s
是新行字符。此行替换模式something_log
的每一行(something_test\:example1\rsomething_log
)中出现的新http://localhost:8080/demo/event/allEvents
。