DU(1) | General Commands Manual | DU(1)

# NAME

`du` — display disk usage statistics

# SYNOPSIS

`du` | [`-H` | `-L` | `-P`] [`-a` | `-d` depth | `-s`] [`-cghikmnrx`] [file ...]

# DESCRIPTION

The `du` utility displays the file system usage for each file argument and for each directory in the file hierarchy rooted in each directory argument. If no file is specified, the block usage of the hierarchy rooted in the current directory is displayed.

The options are as follows:

`-H`
  Symbolic links on the command line are followed. (Symbolic links encountered in the tree traversal are not followed.)
`-L`
  All symbolic links are followed.
`-P`
  No symbolic links are followed.
`-a`
  Display an entry for each file in the file hierarchy.
`-c`
  Display the grand total after all the arguments have been processed.
`-d`
  Display an entry files and directories depth directories deep.
`-g`
  If the `-g` flag is specified, the number displayed is the number of gigabyte (1024*1024*1024 bytes) blocks.
`-h`
  If the `-h` flag is specified, the numbers will be displayed in "human-readable" format. Use unit suffixes: B (Byte), K (Kilobyte), M (Megabyte), G (Gigabyte), T (Terabyte) and P (Petabyte).
`-i`
  Output inode usage instead of blocks. All "human-readable" options are ignored.
`-k`
  By default, `du` displays the number of blocks as returned by the stat(2) system call, i.e. 512-byte blocks. If the `-k` flag is specified, the number displayed is the number of kilobyte (1024 bytes) blocks. Partial numbers of blocks are rounded up.
`-m`
  If the `-m` flag is specified, the number displayed is the number of megabyte (1024*1024 bytes) blocks.
`-n`
  Ignore files and directories with user "nodump" flag (`UF_NODUMP`) set.
`-r`
  Generate warning messages about directories that cannot be read. This is the default behaviour.
`-s`
  Display only the grand total for the specified files.
`-x`
  Filesystem mount points are not traversed.

`du` counts the storage used by symbolic links and not the files they reference unless the `-H` or `-L` option is specified. If either the `-H` or `-L` options are specified, storage used by any symbolic links which are followed is not counted or displayed. The `-H`, `-L` and `-P` options override each other and the command's actions are determined by the last one specified.

Files having multiple hard links are counted (and displayed) a single time per `du` execution.

# ENVIRONMENT

`BLOCKSIZE`
  If the environment variable `BLOCKSIZE` is set, and the `-g`, `-h`, `-k`, and `-m` options are not specified, the block counts will be displayed in units of that size block.

# EXIT STATUS

The `du` utility exits 0 on success, and >0 if an error occurs.

# SEE ALSO

df(1), chflags(2), fts(3), getbsize(3), symlink(7), quot(8)

# HISTORY

A `du` command appeared in Version 1 AT&T UNIX.

September 1, 2019 | NetBSD 11.0