对可能含有空行的文件加倍行间距

对可能含有空行的文件加倍行间距

Content #

如果文本文件已经有一些空行,但你想给所有行加倍行间距,怎么办呢?如果沿用前面的脚本,有些区域会有太多的空行,因为已有的空行也会被加倍: $ cat data6.txt Line one. Line two.

Line three. Line four. $ $ sed ‘$!G’ data6.txt Line one.

Line two.

Line three.

Line four. $ 原来是空行的位置现在有3个空行了。

这个问题的解决办法是,首先删除数据流中的所有空行,然后用G命令在每行之后插入新的空行。要删除已有的空行,需要将d命令和一个匹配空行的模式一起使用: >/^\(/d 这个模式使用了行首锚点(^)和行尾锚点(\))。将这个模式加入脚本就能生成想要的结果: $ sed ‘/^$/d ; $!G’ data6.txt Line one.

Line two.

Line three.

Line four. $

From #

Linux命令行与shell脚本编程大全