Table of Contents


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 FILEs that are symbolic links

summarize disk usage of the NUL-terminated file names specified in file F

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)

like -h, but use powers of 1000 not 1024

like --block-size=1K

-l, --count-links
count sizes many times if hard linked

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.

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

--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

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.

Reporting Bugs

Report bugs to <>.


Copyright (C) 2006 Free Software Foundation, Inc. This is free software. You may redistribute copies of it under the terms of the GNU General Public License <>. There is NO WARRANTY, to the extent permitted by law.

See Also

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 du

should give you access to the complete manual.

Table of Contents