经常用linux df命令查看磁盘空间大小,但有时候要分析文件夹占用磁盘空间大小就要用du命令了。
1.例:
1.1查看某个文件目录大小
# du -sh /root 1.4G/root
du,disk usage,是通过搜索文件来计算每个文件的大小然后累加,du能看到的文件只是一些当前存在
的,没有被删除的。他计算的大小就是当前他认为存在的所有文件大小的累加和。
-s 是计算各目录的总的空间占用,没有的话会递归列出许多没用的信息;
-h 很好理解,就是选择合适的单位,上面有的用M,有的用G,这样就一目了然了,这里du的用法就是这样了,详细的其他选项可自行参考man page。
通常查看目录大小后我会结合df命令查看目录对应哪个磁盘分区
df -h /root
1.2 查看当前目录下所有文件夹目录的大小
# du -sh ./* 0./adm 3.7G./cache 0./crash 8.0K./db 0./empty 0./games 0./gopher 0./kerberos 39G./lib
2.du命令详解:
1.命令格式:
du [选项][文件]
2.命令功能:
显示每个文件和目录的磁盘使用空间。
3.命令参数:
-a或-all 显示目录中个别文件的大小。
-b或-bytes 显示目录或文件大小时,以byte为单位。
-c或--total 除了显示个别目录或文件的大小外,同时也显示所有目录或文件的总和。
-k或--kilobytes 以KB(1024bytes)为单位输出。
-m或--megabytes 以MB为单位输出。
-s或--summarize 仅显示总计,只列出最后加总的值。
-h或--human-readable 以K,M,G为单位,提高信息的可读性。
-x或--one-file-xystem 以一开始处理时的文件系统为准,若遇上其它不同的文件系统目录则略过。
-L<符号链接>或--dereference<符号链接> 显示选项中所指定符号链接的源文件大小。
-S或--separate-dirs 显示个别目录的大小时,并不含其子目录的大小。
-X<文件>或--exclude-from=<文件> 在<文件>指定目录或文件。
--exclude=<目录或文件> 略过指定的目录或文件。
-D或--dereference-args 显示指定符号链接的源文件大小。
-H或--si 与-h参数相同,但是K,M,G是以1000为换算单位。
-l或--count-links 重复计算硬件链接的文件。