在Linux上处理一些数据文件时,有时候需要将其中的空行过滤掉,系统中提供的各种工具都可以完成这个功能。将常用的介绍如下吧:
1. grep
复制代码 代码如下:grep . data.txt
grep -v "^$" data.txt
grep "[^$]" data.txt
2. sed
复制代码 代码如下:
sed "/^$/d" data.txt
sed "/^s*$/d" data.txt #这个命令还可将完全空格、tab等组成的空行删掉。
# The character class s will match the whitespace characters <tab> and <space>.
3. awk
复制代码 代码如下:
awk NF data.txt # 这个也可以将空格、tab等组成的空行删掉。
awk "!/^$/" data.txt
4. tr
复制代码 代码如下:
tr -s "
" < data.txt
貌似这些可以处理的命令里面,“grep . data.txt”这个的效率是比较高的;如果处理大数据量时可以比较一些这些命令的性能。