IT技术博客大学习 共学习 共进步

Linux上删除空行的方法

笑遍世界 2015-01-27 22:33:37 浏览 3,803 次

在Linux上处理一些数据文件时,有时候需要将其中的空行过滤掉,系统中提供的各种工具都可以完成这个功能。将常用的介绍如下吧:
1. grep

1
2
3
grep . data.txt
grep-v'^$' data.txt
grep'[^$]' data.txt

2. sed

1
2
3
sed'/^$/d' data.txt
sed'/^\s*$/d' data.txt   #这个命令还可将完全空格、tab等组成的空行删掉。# The character class \s will match the whitespace characters <tab> and <space>.

3. awk

1
2
awk NF data.txt   # 这个也可以将空格、tab等组成的空行删掉。awk'!/^$/' data.txt

4. tr

1
tr-s'\n'< data.txt

貌似这些可以处理的命令里面,“grep . data.txt”这个的效率是比较高的;如果处理大数据量时可以比较一些这些命令的性能。

建议继续学习

  1. Linux命令行里的“瑞士军刀” (阅读 11,443)
  2. AWK 简明教程 (阅读 9,143)
  3. awk命令,实现文件的合并与拆分 (阅读 6,963)
  4. AWK介绍 (阅读 6,582)
  5. 更快的IP库查找方法以及AWK中的二分查找 (阅读 6,401)
  6. awk 实例之二维数组 (阅读 5,923)
  7. html页面里的幽灵空行――UTF8Bom (阅读 5,304)
  8. 操作大文本,awk vs vim (阅读 4,962)
  9. SED命令行脚本快速参考,AWK命令行脚本快速参考,perl命令行脚本快速参考 (阅读 4,745)
  10. 从shell中向awk传递变量实例 (阅读 4,482)