Linux删除文件内空行四种方法

发布时间:2019-11-21编辑:脚本学堂
本文介绍了Linux下删除文件内空行的4种方法,分别使用grep命令、sed命令、awk命令与tr命令来实现,需要的朋友参考下。

linux系统中处理一些数据文件时,有时需要将其中的空行过滤掉,系统中提供的各种工具都可以完成此功能。

以下介绍使用grep命令sed命令、awk命令与tr命令删除文件中空行的方法。

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 'n' < data.txt

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