使用sed来删除行,分为无选择删除空行、有选择删除和过滤删除
【情形一】无选择删除所有空行
备注:
1. ^$ # 匹配所有空行
2. d # 删除
【情形二】有选择删除连续空白行
备注:
1. . # 匹配至少有一字符的行
2. ^$ # 匹配空行
3. /./,/^$ # 匹配区间为一行非空行 + 一行空行
4. /./,/^$/!d # !d未满足上面的模式则删除
1. . # 匹配至少有一字符的行
2. $ # 匹配数据流的结尾
3. /./,/^$ # 匹配区间为:有字符的行开始-->数据流的结束
4. /./,/^$/!d # !d未满足上面的模式则删除
不像删除开头的空行那么简单,要删除结尾的空行需要很强的技巧和想象力!
正常的脚本的{}里面还有{}。这允许你在整个命令脚本中将一些命令聚合在一起。该命令组将会作用到指定的地址模式上。地址模式匹配只含有一个换行符的任意行。当找到了一行,如果是最后一行,删除命令会删除它。 如果不是最后一行,N命令就会将下一行附加到它后面,跳转命令会跳到起始点重新开始!