df命令
有时需要知道在某个设备上还有多少磁盘空间。df命令可以让你很方便地查看所有已挂载磁盘的使用情况。
yola2626@ubuntu:~$ df -h
Filesystem 1K-blocks Used Available Use% Mounted on
udev 1985492 0 1985492 0% /dev
tmpfs 401588 2092 399496 1% /run
/dev/sda1 72116344 18573648 50380780 27% /
df命令会显示每个有数据的已挂载文件系统。命令输出如下:
- 设备的设备文件位置;
- 能容纳多少个1024字节大小的块;
- 已用了多少个1024字节大小的块;
- 还有多少个1024字节大小的块可用;
- 已用空间所占的比例;
- 设备挂载到了哪个挂载点上。
df命令有一些命令行参数可用,但基本上不会用到。一个常用的参数是-h。它会把输出中的磁盘空间按照用户易读的形式显示,通常用M来替代兆字节,用G替代吉字节。
yola2626@ubuntu:~$ df -h
Filesystem Size Used Avail Use% Mounted on
udev 1.9G 0 1.9G 0% /dev
tmpfs 393M 2.1M 391M 1% /run
/dev/sda1 69G 18G 49G 27% /
# ...
说明
Linux系统后台一直有进程来处理文件或使用文件。df命令的输出值显示的是Linux系统认为的当前值。有可能系统上有运行的进程已经创建或删除了某个文件,但尚未释放文件。 这个值是不会算进闲置空间的。
du命令
du命令可以显示某个特定目录(默认情况下是当前目录)的磁盘使用情况。这一方法可用来快速判断系统上某个目录下是不是有超大文件。
默认情况下,du命令会显示当前目录下所有的文件、目录和子目录的磁盘使用情况,它会以 3 磁盘块为单位来表明每个文件或目录占用了多大存储空间。对标准大小的目录来说,这个输出会是一个比较长的列表。下面是du命令的部分输出:
yola2626@ubuntu:~/.vimplus$ du
8 ./.github
132 ./colors
616 ./screenshots
每行输出左边的数值是每个文件或目录占用的磁盘块数。这个列表是从目录层级的最底部开始,然后按文件、子目录、目录逐级向上。
这么用du命令(不加参数,用默认参数)作用并不大。想知道每个文件和目录占用了多大的磁盘空间,下面是能让du命令用起来更方便的几个命令行参数。
-
-c
:显示所有已列出文件总的大小。 -
-h
:按用户易读的格式输出大小,即用K替代千字节,用M替代兆字节,用G替代吉字节。 -
-s
:显示每个输出参数的总计。
dingyan@ubuntu:~/.vimplus$ du -h
8.0K ./.github
132K ./colors
616K ./screenshots