du - estimate file space usage


du [OPTION]... [FILE]... 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
 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 only symlinks that are listed on the command line
 summarize disk usage of the NUL-terminated file names specified in file F; If F is - then read names from standard input
-H 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, --exclude-from=FILE
 exclude files that match any pattern in FILE
 exclude files that match PATTERN
 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
 show time as WORD instead of modification time: atime, access, use, ctime or status
 show times using style STYLE: full-iso, long-iso, iso, +FORMAT FORMAT is interpreted like ‘date’
--help display this help and exit
 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.


PATTERN is a shell pattern (not a regular expression). The pattern ? matches any one character, whereas * matches any string (composed of zero, one or multiple characters). For example, *.o will match any files whose names end in .o. Therefore, the command
du --exclude='*.o'
will skip all files and subdirectories ending in .o (including the file .o itself).


Written by Torbjorn Granlund, David MacKenzie, Paul Eggert, and Jim Meyering.


Report du bugs to GNU coreutils home page: <> General help using GNU software: <>


Copyright © 2009 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <>. This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law.


The full documentation for du is maintained as a Texinfo manual. If the info and du programs are properly installed at your site, the command
info coreutils 'du invocation'
should give you access to the complete manual.

openSUSE Logo