12.12 报告目录使用的文件空间

du

df命令可以提供整个硬盘的情况,但如果只想知道一个目录和它的内容使用了多少空间,又该怎么办呢?du命令(disk usage的缩写)能够解决这个问题。先用cd命令将当前工作目录切换到待查的目录,然后运行du命令。

  1. $ cd music
  2. $ du
  3. 36582 ./Donald_Fagen
  4. 593985 ./Clash
  5. 145962 ./Hank_Mobley/1958_Peckin'_Time
  6. 128200 ./Hank_Mobley/1963_No_Room_For_Squares
  7. 108445 ./Hank_Mobley/1961_Workout
  8. 2662185 .

df命令一样,du命令的结果也默认以KB为单位,也可以像df命令一样,使用-h(或--human-readable)选项,以更易于理解的方式来查看结果。

  1. $ cd music
  2. $ du -h
  3. 36M ./Donald_Fagen
  4. 581M ./Clash
  5. 143M ./Hank_Mobley/1958_Peckin'_Time
  6. 126M ./Hank_Mobley/1963_No_Room_For_Squares
  7. 106M ./Hank_Mobley/1961_Workout
  8. 2.6G .

输出结果显示了每个子目录使用的空间,而对于包含其他目录的子目录,也显示了相应的内容总量。以Hank_Mobley目录为例,它在文件系统中总共占了374 MB。这个总数来源于包含在Hank_Mobley目录中的3个子目录(因为要对以千字节为单位的实际容量进行取整,显示为兆字节,所以总数多少会有点偏差)。如果Hank_Mobley目录占用空间的总数比它的三个子目录空间的总和要大的多的话,那就意味着Hank_Mobley目录包含了很多不包含在任何子目录中的零散文件。

最后,整个music/目录的空间大小是2.6 GB。