如何使用linux命令之--du

问题需求:查询指定目录下的所有文件夹的大小

思路:GOOGLE,BAIDU,常常忘记了MANUAL  --help

1.

[root@racnode1 aiki]# du --help
Usage: du [OPTION]... [FILE]...
  or:  du [OPTION]... --files0-from=F
Summarize disk usage of each FILE, recursively for directories.

Mandatory arguments to long options are mandatory for short options too.
  -a, --all             write counts for all files, not just directories
      --apparent-size   print apparent sizes, rather than disk usage; although
                          the apparent size is usually smaller, it may be
                          larger due to holes in (`sparse') files, internal
                          fragmentation, indirect blocks, and the like
  -B, --block-size=SIZE use SIZE-byte blocks
  -b, --bytes           equivalent to `--apparent-size --block-size=1'
  -c, --total           produce a grand total
  -D, --dereference-args  dereference FILEs that are symbolic links
      --files0-from=F   summarize disk usage of the NUL-terminated file
                          names specified in file F
  -H                    like --si, but also evokes a warning; will soon
                          change to be equivalent to --dereference-args (-D)
  -h, --human-readable  print sizes in human readable format (e.g., 1K 234M 2G)
      --si              like -h, but use powers of 1000 not 1024
  -k                    like --block-size=1K
  -l, --count-links     count sizes many times if hard linked
  -m                    like --block-size=1M
  -L, --dereference     dereference all symbolic links
  -P, --no-dereference  don't follow any symbolic links (this is the default)
  -0, --null            end each output line with 0 byte rather than newline
  -S, --separate-dirs   do not include size of subdirectories
  -s, --summarize       display only a total for each argument
  -x, --one-file-system  skip directories on different file systems
  -X FILE, --exclude-from=FILE  Exclude files that match any pattern in FILE.
      --exclude=PATTERN Exclude files that match PATTERN.
      --max-depth=N     print the total for a directory (or file, with --all)
                          only if it is N or fewer levels below the command
                          line argument;  --max-depth=0 is the same as
                          --summarize
      --time            show time of the last modification of any file in the
                          directory, or any of its subdirectories
      --time=WORD       show time as WORD instead of modification time:
                          atime, access, use, ctime or status
      --time-style=STYLE show times using style STYLE:
                          full-iso, long-iso, iso, +FORMAT
                          FORMAT is interpreted like `date'
      --help     display this help and exit
      --version  output version information and exit

SIZE may be (or may be an integer optionally followed by) one of following:
kB 1000, K 1024, MB 1000*1000, M 1024*1024, and so on for G, T, P, E, Z, Y.

2.很多时候看是看不出个具体意思,简单做法做建相应目录文件,运行相关命令即可;

文章开头的需求,当我们敲入命令du --max-depth=1时

[root@racnode1 aiki]# du --max-depth=1
4       ./1
12      ./2
4       ./3
24    

3.如果要进一步的详看子目录那么

[root@racnode1 aiki]# du -c
4       ./1
4       ./2/22
12      ./2
4       ./3
24      .
24      total

4.对于数字,如果你不知道单位是K,M时根据测试输入

[root@racnode1 aiki]# du --max-depth=1 -h
4.0K    ./1
12K     ./2
4.0K    ./3
24K     .


5.下面我们再回来看上面列举的3个参数

      --max-depth=N     print the total for a directory (or file, with --all)
                          only if it is N or fewer levels below the command
                          line argument;  --max-depth=0 is the same as
                          --summarize

意思:输出一个目录的总大小(或者是文件,使用--all参数,也就是此命令也适用于文件)

仅它等于N或者是更低级别作为命令行参数时;--max-depth=0等同于--summarize

[root@racnode1 aiki]# du --max-depth=1 aa.txt
0       aa.txt

[root@racnode1 aiki]# du --summarize
24      .

------------------------------------------------------------------------------------------------------------------

  -h, --human-readable  print sizes in human readable format (e.g., 1K 234M 2G)

-h也就是将格式转换为可读性强的格式,如果没有加很明显有时不知道单位是什么;

[root@racnode1 aiki]# du -h
4.0K    ./1
4.0K    ./2/22
12K     ./2
4.0K    ./3
24K     .
[root@racnode1 aiki]# du --human-readable
4.0K    ./1
4.0K    ./2/22
12K     ./2
4.0K    ./3
24K    

------------------------------------------------------------------------------------------------------------------

  -c, --total           produce a grand total

很简单:输入目录和子目录的总大小

[root@racnode1 aiki]# du --total
4       ./1
4       ./2/22
12      ./2
4       ./3
24      .
24      total
[root@racnode1 aiki]# du -c
4       ./1
4       ./2/22
12      ./2
4       ./3
24      .
24      total

6.小结

对于很多LINUX命令当不知道具体操作时要学会使用这些命令,而不当于是依靠GOOGLE,BAIDU......

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值