我有一个txt文件,其中包含:
Some random
text here. This file
has multiple lines. Should be one line.
我用:
sed '{:q;N;s/\n/:sl:/g;t q}' file1.txt > singleline.txt
并获得:
Some random:sl:text here. This file:sl:has multiple lines. Should be one line.
现在,我想用
:sl:
字符替换newline (\n)
模式。当我使用时:sed 's/:sl:/&\n/g' singleline.txt
我得到:
Some random:sl:
text here. This file:sl:
has multiple lines. Should be one line.
如何用换行符将替换为模式,而不是在模式之后添加换行符?
最佳答案
Sed使用&
作为匹配模式的快捷方式。因此,您将:s1:
替换为:s1:\n
。
像这样更改您的sed命令:
sed 's/:sl:/\n/g' singleline.txt