输出 / 目录下所有目录文件的大小并排序

使用 du -sh /* 输出 / 目录下所有的目录总大小,看下效果:

[root@localhost ~]# du -sh /* 
0	/bin
110M	/boot
0	/dev
32M	/etc
12K	/home
0	/lib
0	/lib64
0	/media
0	/mnt
0	/opt
du: cannot access ‘/proc/2731/task/2731/fd/4’: No such file or directory
du: cannot access ‘/proc/2731/task/2731/fdinfo/4’: No such file or directory
du: cannot access ‘/proc/2731/fd/4’: No such file or directory
du: cannot access ‘/proc/2731/fdinfo/4’: No such file or directory
0	/proc
48K	/root
7.6M	/run
0	/sbin
0	/srv
0	/sys
4.0K	/tmp
1.4G	/usr
330M	/var

/proc/ 是虚拟文件系统,不是磁盘目录,不存在占用磁盘空间所有需要忽略,改动一下命令

[root@localhost ~]# du -sh /* 2> /dev/null | grep -v /proc
0	/bin
110M	/boot
0	/dev
32M	/etc
12K	/home
0	/lib
0	/lib64
0	/media
0	/mnt
0	/opt
48K	/root
7.6M	/run
0	/sbin
0	/srv
0	/sys
4.0K	/tmp
1.4G	/usr
330M	/var

已经忽略了 /proc 目录如何按大小排序呢

如果使用 sort 不带参数执行,默认是按第一列字典顺序,比如a-z,A-Z 大写字母通常在小写字母之前,默认是升序,默认字段分隔符是任何空白字符(空格或制表符)

[root@localhost ~]# du -sh /* 2> /dev/null | grep -v /proc | sort -h
0	/bin
0	/dev
0	/lib
0	/lib64
0	/media
0	/mnt
0	/opt
0	/sbin
0	/srv
0	/sys
4.0K	/tmp
12K	/home
48K	/root
7.7M	/run
32M	/etc
110M	/boot
330M	/var
1.4G	/usr
  • -h 选项让 sort 以人类可读的数字格式(如 K, M, G)进行排序。

sort功能很强大还是需深入学习一下。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值