新闻动态
新闻动态
NEWS INFORMATION

Linux如何过滤空文件?Linux过滤空文件的命令总结

发布日期:2021-12-30 00:36 | 文章来源:源码之家

在Linux中有经常做文件的操作,今天有个同事在生产环境统计数据,发现有很多日志文件都是空的,文件太多了,他想查看一下有哪些文件不是空文件。

而且还不想使用脚本,就想用一个命令来搞定,确实够懒的一个人。简单模拟了下。我只想查看e.lst 因为它的大小不是空的。

DUM1102 /oravl01/Oracle> ll *.lst

-rw-r--r-- 1 oracle dba 0 Jul 21 15:39 a.lst

-rw-r--r-- 1 oracle dba 0 Jul 21 15:39 b.lst

-rw-r--r-- 1 oracle dba 0 Jul 21 15:39 c.lst

-rw-r--r-- 1 oracle dba 0 Jul 21 15:39 d.lst

-rw-r--r-- 1 oracle dba 7 Jul 21 15:39 e.lst

最精简的命令就是使用grep了。

DUM1102 /oravl01/oracle> ll *.lst|grep -v " 0 "

-rw-r--r-- 1 oracle dba 7 Jul 21 15:39 e.lst

当然也可以使用awk来完成。

难度再升级一下,新增一个文件 f.lst 现在文件的结构如下:

DUM1102 /oravl01/oracle> ll *.lst

-rw-r--r-- 1 oracle dba 0 Jul 21 15:39 a.lst

-rw-r--r-- 1 oracle dba 0 Jul 21 15:39 b.lst

-rw-r--r-- 1 oracle dba 0 Jul 21 15:39 c.lst

-rw-r--r-- 1 oracle dba 0 Jul 21 15:39 d.lst

-rw-r--r-- 1 oracle dba 7 Jul 21 15:39 e.lst

-rw-r--r-- 1 oracle dba 14 Jul 21 16:35 f.lst

他现在想查看大小为7字节的文件,使用awk来牛刀小试。

ll *.lst | awk -v file_size=7 '{ if ( $5==file_size ) print $5 " " $9}'

DUM1102 /oravl01/oracle> ll *.lst | awk -v file_size=7 '{ if ( $5==file_size ) print $5 " " $9}'

7 e.lst

版权声明:本站文章来源标注为YINGSOO的内容版权均为本站所有,欢迎引用、转载,请保持原文完整并注明来源及原文链接。禁止复制或仿造本网站,禁止在非www.yingsoo.com所属的服务器上建立镜像,否则将依法追究法律责任。本站部分内容来源于网友推荐、互联网收集整理而来,仅供学习参考,不代表本站立场,如有内容涉嫌侵权,请联系alex-e#qq.com处理。

实时开通

自选配置、实时开通

免备案

全球线路精选!

全天候客户服务

7x24全年不间断在线

专属顾问服务

1对1客户咨询顾问

在线
客服

在线客服:7*24小时在线

客服
热线

400-630-3752
7*24小时客服服务热线

关注
微信

关注官方微信
顶部