linux命令__du

du

Linux du (英文全拼:disk usage)命令用于显示目录或文件的大小。

du 会显示指定的目录或文件所占用的磁盘空间。

du命令作用是估计文件系统的磁盘已使用量,常用于查看文件或目录所占磁盘容量。
du命令与df命令不同,df命令是统计磁盘使用情况,详见linux命令详解之df命令。
du命令会直接到文件系统内查找所有文件数据,所以命令执行时会耗费一点儿时间。
在默认情况下,输出结果大小是以KB为单位的。如果想以MB为单位,使用-m参数即可,如果只想知道目录占了多少容量,使用-s参数即可。

参数

-a或-all 显示目录中个别文件的大小。
-b或-bytes 显示目录或文件大小时,以byte为单位。
-c或--total 除了显示个别目录或文件的大小外,同时也显示所有目录或文件的总和。
-D或--dereference-args 显示指定符号连接的源文件大小。
-h或--human-readable 以K,M,G为单位,提高信息的可读性。
-H或--si 与-h参数相同,但是K,M,G是以1000为换算单位。
-k或--kilobytes 以1024 bytes为单位。
-l或--count-links 重复计算硬件连接的文件。
-L<符号连接>或--dereference<符号连接> 显示选项中所指定符号连接的源文件大小。
-m或--megabytes 以1MB为单位。
-s或--summarize 仅显示总计。
-S或--separate-dirs 显示个别目录的大小时,并不含其子目录的大小。
-x或--one-file-xystem 以一开始处理时的文件系统为准,若遇上其它不同的文件系统目录则略过。
-X<文件>或--exclude-from=<文件> 在<文件>指定目录或文件。
--exclude=<目录或文件> 略过指定的目录或文件。
--max-depth=<目录层数> 超过指定层数的目录后,予以忽略。

实例

[root@honey-master kafka] du
116	./bin/windows
256	./bin
76	./config
70724	./libs
3316	./site-docs
3120	./logs
77528	.

默认情况下,只统计目录的大小,以KB为单位。如果有多层级目录,也会自动递归搜索。

[root@honey-master lib]# du
104	./python3.6/site-packages/slip/dbus
168	./python3.6/site-packages/slip
60	./python3.6/site-packages/urllib3-1.24.2-py3.6.egg-info
48	./python3.6/site-packages/procfs/__pycache__
92	./python3.6/site-packages/procfs
20	./python3.6/site-packages/python_linux_procfs-0.6-py3.6.egg-info
84	./python3.6/site-packages/pyudev/__pycache__
28	./python3.6/site-packages/pyudev/_ctypeslib/__pycache__
56	./python3.6/site-packages/pyudev/_ctypeslib
....

还可以指定某个文件查看大小

image-20220605102245077

  1. -a

    [root@honey-master honeypot-web] du -a
    572	./dist/asciinema-player.js
    4	./dist/favicon.ico
    20	./dist/index.html
    4	./dist/css/npm.codemirror~dcae4f2f.74fc96ee.css.gz
    4	./dist/css/chunk-5f9a1b47.9c9f2a0d.css
    

    会递归显示每个文件的大小

  2. -b

    [root@honey-master honeypot-web] du -ab
    583102	./dist/asciinema-player.js
    733	./dist/favicon.ico
    16444	./dist/index.html
    1686	./dist/css/npm.codemirror~dcae4f2f.74fc96ee.css.gz
    732	./dist/css/chunk-5f9a1b47.9c9f2a0d.css
    338	./dist/css/chunk-5d23d1da.622c3e50.css.gz
    5567	./dist/css/chunk-f0c0d6f6.4ff0a8c2.css.gz
    

    以字节为单位显示

  3. -c

    [root@honey-master honeypot-web] du -c
    1768	./dist/css
    152	./dist/cast
    11184	./dist/js
    1688	./dist/echartImages
    10808	./dist/img
    40	./dist/fonts
    26440	./dist
    26440	.
    26440	total
    
  4. -h

    [root@honey-master honeypot-web]# du -h
    1.8M	./dist/css
    152K	./dist/cast
    11M	./dist/js
    1.7M	./dist/echartImages
    11M	./dist/img
    40K	./dist/fonts
    26M	./dist
    26M	.
    

    显示具体的单位

  5. -s

    [root@honey-master honeypot-web]# du -sh
    26M	.
    

    会显示整个目录的大小,也可以指定目录

    image-20220605101509321

    也可以显示指定目录下每个文件或目录的容量大小

    [root@honey-master ratel] du -sh ./*
    0	./abc
    4.0K	./agent.json
    108K	./config.cpython-36m-x86_64-linux-gnu.so
    20K	./Dorado
    8.0K	./encryptcode.py
    
  6. --max-depth

    image-20220605101821779

    image-20220605101842547

  7. -M

    image-20220605101930119

    以MB为单位

  8. du -sh * --time

    image-20220605102107565

  9. du -sh * | sort -rh

    image-20220605102145682

posted @ 2022-06-05 10:25  ivanlee717  阅读(214)  评论(0编辑  收藏  举报