Bash替换双线

时间:2014-07-15 16:43:31

标签: bash shell scripting

我正在尝试遍历文件,查找一行中出现两个空行,并删除一个空行,以便只有一个空行 - >然后保存文件。如何使用bash或其他脚本执行此操作?

2 个答案:

答案 0 :(得分:4)

-s的{​​{1}}选项执行此操作:

  

-s, - squeeze-blank

     

抑制重复的空输出线

所以:

cat

如果这不是过滤掉所有空行,它们可能不是真正的空,可能有 Space Tab 字符。您可以使用cat -s file > file.new mv file.new file 将这些转换为空行:

sed

答案 1 :(得分:2)

普通cat可能没有-s选项,因此您也可以使用sed

sed -i '/./,/^$/!d' file