[Linux] du-查看文件夹大小-并按大小进行排序

[Linux] du-查看文件夹大小-并按大小进行排序

使用df 命令查看当前磁盘使用情况:

jack@jiaobuchong:~$ df -lh 
Filesystem      Size  Used Avail Use% Mounted on 
/dev/sda3        18G  5.7G   11G  35% / 
udev            2.7G  4.0K  2.7G   1% /dev 
tmpfs           553M  916K  552M   1% /run 
none            5.0M     0  5.0M   0% /run/lock 
none            2.7G  488K  2.7G   1% /run/shm 
/dev/sda2       946M  128M  754M  15% /boot 
/dev/sda1        93G   87G  5.5G  95% /media/2AA64C7FA64C4D8F_

下面du命令就上场了:

jack@jiaobuchong:~$ pwd 
/home/jack 
jack@jiaobuchong:~$ du -sh  
1.9G    . 
jack@jiaobuchong:~$ cd .. 
jack@jiaobuchong:/home$ du -sh jack/ 
1.9G    jack/ 
jack@jiaobuchong:/home$ du -h --max-depth=0 jack/ 
1.9G    jack/ 

能看到上边得到的相同的结果吧,

-s, –summarize display only a total for each argument, -s这个参数的作用就是仅显示总计,即当前文件夹的大小。

jack@jiaobuchong:~$ du -sh * 
170M    Desktop 
452K    Documents 
161M    Downloads 
12K examples.desktop 
833M    installed-software 
284K    learngit 
4.0K    Music 
4.7M    Pictures 
3.2M    program_pratice 
4.0K    Public 
112K    session 
4.0K    Templates 
4.0K    Videos 
  • 可以将当前目录下所有文件的大小给列出来。那要将这些列出来的文件按照从大到小的方式排序呢?
jack@jiaobuchong:~$ du -sh * | sort -nr 
833M    installed-software 
452K    Documents 
284K    learngit 
170M    Desktop 
161M    Downloads 
112K    session 
12K examples.desktop 
4.7M    Pictures 
4.0K    Videos 
4.0K    Templates 
4.0K    Public 
4.0K    Music 
3.2M    program_pratice

找sort 来帮个忙就可以了。呵呵!这个排序不正常哦,都是因为-h参数的原因,

jack@jiaobuchong:~$ du -s * | sort -nr  
852756  installed-software 
173868  Desktop 
164768  Downloads 
4724    Pictures 
3236    program_pratice 
452 Documents 
284 learngit 
112 session 
12  examples.desktop 
4   Videos 
4   Templates 
4   Public 
4   Music 

这样就正常排序了。

du -s * | sort -nr | head 选出排在前面的10个,

du -s * | sort -nr | tail 选出排在后面的10个。

你可能感兴趣的:(linux)