如何从文本文件中删除空行并加入由空行分隔的行?

时间:2016-03-21 21:50:17

标签: bash awk sed

我有一个文本文件,其中一些条目如下所示:

"Hello, my name is

George. Its very nice to meet you"

我想运行一个SED或AWK命令,它给出了以下结果:

"Hello, my name is George. Its very nice to meet you"

我知道我可以通过运行来删除带有SED的空行:

sed '/^\s*$/d' 

该命令仅删除空白行但不加入字符串,如上所示。

由于

2 个答案:

答案 0 :(得分:1)

我会使用awk

awk 'BEGIN{RS="\n\n";ORS=" "}1' file

该命令使用两个换行符(空白行)作为输入分隔符,使用空格作为输出记录分隔符

1是一个awk成语。它将始终评估为true,使awk打印每条记录。

顺便说一下,如果您的空白行可能包含空格,请将命令更改为:

awk 'BEGIN{RS="\n[[:space:]]*\n";ORS=" "}1' file

答案 1 :(得分:0)

转到菜单->编辑->行操作-在记事本++中选择“删除空行”

一键式删除所有多余的行:)