sed——删除空行(包括空格、特殊字符、tab等组成的空行)

有时候生成的数据文件中有空行,或者在空行中还有空格、tab、特殊字符(如:^M)等,而且文件又特别大,那怎么处理呢?可以通过Linux命令sed实现去除这些空行。

如果都是空行,而空行中没有字符的情况(但是不建议这样写)
sed -i '/^$/d' test.txt

建议加入 [[:space:]] 用以匹配空格、tab、^M 等特殊字符
sed -i '/^[[:space:]]*$/d' test.txt

上述建议方式的简化版(本人比较喜爱的一种方式,但特殊字符只匹配过'^M',其他未验证)
sed -i '/^\s*$/d' test.txt

 * (星号)用以匹配空格、tab、'^M'类特殊字符等至少零次

你可能感兴趣的:(Linux,sed)