业务部分刚提了一个问题,要查找/home/imzcy/date目录下除了今天之外的所有数据的总大小,于是先在虚拟机中测试
1、首先创建了几个测试文件
1 2 3 4 5 6 |
[root@imzcy data]# ll -h 总用量 124K -rw-r--r-- 1 root root 8.2K 6月 13 13:43 IMZCY-20180601.txt -rw-r--r-- 1 root root 77K 6月 13 13:44 IMZCY-20180602.txt -rw-r--r-- 1 root root 29K 6月 13 13:44 IMZCY-20180603.txt [root@imzcy data]# |
2、使用du -ch命令能查看指定文件大小及总大小
1 2 3 4 5 |
[root@imzcy data]# du -ch IMZCY-20180601.txt IMZCY-20180603.txt 12K IMZCY-20180601.txt 32K IMZCY-20180603.txt 44K 总用量 [root@imzcy data]# |
3、使用grep -v命令能过滤不想要统计的文件
1 2 3 4 |
[root@imzcy data]# ls |grep -v *20180602* IMZCY-20180601.txt IMZCY-20180603.txt [root@imzcy data]# |
4、把命令组合到一起,就能获取到要查看的文件的总大小了
1 2 3 4 5 |
[root@imzcy data]# du -ch `ls |grep -v *20180602*` 12K IMZCY-20180601.txt 32K IMZCY-20180603.txt 44K 总用量 [root@imzcy data]# |
5、运行上面命令,会过滤输出每个文件的大小及总大小,上面测试只创建的3个文件还好,当文件有几万的时候,会被刷屏的,再加条命令,直接查看文件的总大小
1 2 3 |
[root@imzcy data]# du -ch `ls |grep -v *20180602*` |tail -n 1 44K 总用量 [root@imzcy data]# |