du reports the amount of disk space used by the specified files,
and by each directory in the hierarchies rooted at the
specified files.
Here disk space used means space used for the entire
file hierarchy below the specified file.
With no arguments,
du reports the disk space for the current directory.
The output is in 1024-byte units (when no units are
specified by options), unless the environment variable
POSIXLY_CORRECT is set, in which case POSIX is followed.
Print sizes in blocks of
size bytes.
(New in file utils-4.0.)
-c, --total
Print a grand total of all arguments after all arguments have been
processed. This can be used to find out the total disk usage of a
given set of files or directories.
-D, --dereference-args
Dereference symbolic links that are command line arguments. Does
not affect other symbolic links. This is helpful for finding out
the disk usage of directories, such as
/usr/tmp, which are often symbolic links.
--exclude=pattern
When recursing, skip subdirectories or files matching
pattern. The
pattern may be any standard Bourne shell file glob pattern.
(New in file utils-4.0.)
-h, --human-readable
Append a size letter, such as
M for binary megabytes (mebibytes), to each size.
-H, --si
Do the same as for
-h, but use the official SI units (with powers of 1000 instead of 1024,
so that M stands for 1000000 instead of 1048576).
(New in file utils-4.0.)
-k, --kilobytes
Print sizes in KiB (binary kilobytes, 1024 bytes).
-l, --count-links
Count the size of all files, even if they have appeared already
(as a hard link).
-L, --dereference
Dereference symbolic links (show the disk space used by the file
or directory that the link points to instead of the space used by
the link).
-m, --megabytes
Print sizes in MiB (binary megabytes, 1048576 bytes).
--max-depth=n
Print the total for a directory (or file, with the
-a flag) only if it is
n or fewer levels below the command line argument;
--max-depth=0 is the same as the
-s flag.
(New in file utils-4.0.)
-s, --summarize
Display only a total for each argument.
-S, --separate-dirs
Report the size of each directory separately, not including the
sizes of subdirectories.
-x, --one-file-system
Skip directories that are on different filesystems from the one
that the argument being processed is on.
-X file, --exclude-from=file
Like
--exclude, except take the patterns to exclude from the specified
file. Patterns are listed one per line. If
file is given as -, patterns are read from standard input.
(New in file utils-4.0.)
On BSD systems,
du reports sizes that are half the correct values
for files that are NFS-mounted from HP-UX systems. On HP-UX systems,
it reports sizes that are twice the correct values for files that are
NFS-mounted from BSD systems. This is due to a flaw in HP-UX; it also
affects the HP-UX
du program.
The POSIXLY_CORRECT environment variable determines the choice of unit.
If it is not set,
and the BLOCKSIZE environment variable has a value starting
with human, then behaviour is as for the -h option,
unless overridden by -k or -m options.
The variables LANG, LC_ALL, LC_CTYPE and LC_MESSAGES have the
usual meaning.