在使用Linux的过程中我们可能会遇到磁盘大小超过标准的情况,系统会有报警提示,或者你想查看磁盘中文件的大小分布情况,以便于管理空间,如果这时如果掌握df和du命令是非常方便的

df可以查看一级文件夹大小、使用比例、档案系统及其挂入点,但对文件却无能为力。

du可以查看文件及文件夹的大小。

df命令详细用法

a:显示全部的档案系统和各分割区的磁盘使用情形

i:显示i -nodes的使用量

k:大小用k来表示 (默认值)

t:显示某一个档案系统的所有分割区磁盘使用量

x:显示不是某一个档案系统的所有分割区磁盘使用量

T:显示每个分割区所属的档案系统名称

常用命令:df -hi

du命令详细用法

a:显示全部目录和其次目录下的每个档案所占的磁盘空间

b:大小用bytes来表示 (默认值为k bytes)

c:最后再加上总计 (默认值)

s:只显示各档案大小的总合

x:只计算同属同一个档案系统的档案

L:计算所有的档案大小

常用命令:du -a

du -sh * 查看当前各个目录及文件的大小

用df命令查看分区情况

$ df -h

命令结果参考如下:

Filesystem            Size  Used Avail Use% Mounted on
/dev/sda4             367G  7.1G  342G   3% /
none                  7.7G  232K  7.7G   1% /dev
none                  7.8G     0  7.8G   0% /dev/shm
none                  7.8G  440K  7.8G   1% /var/run
none                  7.8G     0  7.8G   0% /var/lock
/dev/sda1             184M   28M  147M  16% /boot
/dev/sda6             443G  120G  301G  29% /file
/dev/sda3              92G  4.4G   83G   5% /home

参数 -h 表示使用「Human-readable」的输出,也就是在档案系统大小使用 GB、MB 等易读的格式。
上面的命令输出的第一个字段(Filesystem)及最后一个字段(Mounted on)分别是档案系统及其挂入点。我们可以看到 /dev/sda4 这个分区被挂在根目录下。
接下来的四个字段 Size、Used、Avail、及 Use% 分别是该分割区的容量、已使用的大小、剩下的大小、及使用的百分比。

用du命令查看文件或文件夹的磁盘使用空间

$ du -h --max-depth=1
2.5G    ./device
2.8M    ./.repo
688K    ./mirror
244M    ./platform
3.8G    ./kernel
884K    ./git-repo.git
6.4G    .

如果当前目录下文件和文件夹很多,使用不带参数的 du 命令,可以循环列出当前目录下所有文件和文件夹所使用的空间。文件多时就会很乱,可以使用参数--max-depth=指定深入目录的层数;如要查看当前目录已使用的总空间大小,使用du -h --max-depth=0命令即可;如要查看当前目录已使用的总空间大小及当前目录下一级文件和文件夹各自使用的总空间大小,使用du -h --max-depth=1命令即可。