1

我有一个包含很多行的文件。我想在每两行之间插入一个空行,例如原始文件

xfdljflsad
fjdiaopqqq
dioapfdja;

我想把它做成:

xfdljflsad

fjdiaopqqq

dioapfdja;

如何做到这一点?我想为此使用 shell 脚本、awk 或 sed?谢谢!

4

4 回答 4

8

sed, 使用

sed G input-file

如果 pilcrow 是正确的,并且您不希望在文件末尾添加额外的换行符,则执行以下操作:

sed '$!G' input-file

另一种选择是使用pr

pr -dt input-file
于 2012-11-02T18:46:03.653 回答
2

awk '{打印 nl $0; nl="\n"}' 文件

于 2012-11-03T07:20:28.360 回答
1

如果我想快速正则表达式文件,我的方法。

vim file.txt
%s/\n/\n\n/g    
于 2012-11-02T18:40:44.963 回答
1

惯用的awk:

awk 1 ORS='\n\n' file

与 perl 类似的事情:

perl -nE 'say' file

| head -n -1如果不需要最后的换行符,请附加。

于 2012-11-03T23:24:39.600 回答