我有一个有三行的file.txt
line1
line2
line3
我在vim中打开file.txt 我想用一个字符串为“foo”的新行替换每个CR(回车符),有些事情是这样的。
$ cat file.txt
line1
foo
line2
foo
line3
foo
还在bash脚本中查找awk,sed和其他任何东西的可能性。
答案 0 :(得分:2)
使用sed,如果您只想用foo
替换回车:
sed 's/\x0D$/\nfoo/' file.txt
在每行之后添加一行字符串foo
:
sed 's/$/&\nfoo/' file.txt
答案 1 :(得分:2)
您可以在Vim中使用此替换:
:%s/\n/&foo&
或者这个宏:
:%g/^/norm ofoo
答案 2 :(得分:1)
$ awk '{print $0 "\nfoo"}' file
line1
foo
line2
foo
line3
foo
答案 3 :(得分:0)
此模式将在vim中执行您想要的操作。
:%s/\n/^Mfoo^M/g
要在模式中插入^M
,请按 Ctrl + V ,然后按 Enter 。
^M
会插入换行符,而在模式中会逐字插入<
,C
,R
和>
而不是^M
,您可以将\r
用于Linux计算机。
:%s/\n/\rfoo\r/g