Display disk usage statistics.
Lists the file system usage for individual files, if a folder argument is passed argument, du will list usage for each sub folder in that hierarchy. If no file is specified, the current folder (hierarchy) is displayed.
Syntax
du [-H | -L | -P]
[-a | -s | -d depth] [-c]
[-h | -k | -m | -g]
[-x] [-I mask]
[file ...]
Options
-H Symbolic links on the command line are followed, symbolic links
in file hierarchies are not followed.
-L Symbolic links on the command line and in file hierarchies are
followed.
-P No symbolic links are followed (default)
-a Display an entry for each file in a file hierarchy.
-s Display an entry for each specified file. (Equivalent to -d 0)
-d depth
Display an entry for all files and folders depth folders deep.
-h "Human-readable" output. Use unit suffixes: Byte, Kilobyte,
Megabyte, Gigabyte, Terabyte and Petabyte
-k KB Display block counts in 1024-byte (1-Kbyte) blocks.
-m MB Display block counts in 1048576-byte (1-Mbyte) blocks.
-g GB Display block counts in 1073741824-byte (1-Gbyte) blocks.
-r Generate any read error messages, on by default, this option
exists solely for conformance with X/Open Portability Guide 4
-c Display a grand total.
-x File system mount points are not traversed.
-I mask
Ignore files and folders matching the specified mask.
The du utility 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.
Files having multiple hard links are counted (and displayed) a single time per du execution.
If the -k flag is specified, the number of 1024-byte blocks used by the file is displayed, otherwise getbsize(3) is used to determine the preferred block size. Partial numbers of blocks are rounded up.
Examples
List files and folders - totalling the size to include subfolders:
du -sk * | sort -nr
List folders and hidden (system folders) - totalling the size to include subfolders:
du -d 1 . | sort -nr
ENVIRONMENT
If the environment variable BLOCKSIZE is set, and the -k option is not specified, the block counts will be displayed in units of that size block. If BLOCKSIZE is not set, and the -k option is not specified, the block counts will be displayed in 512-byte blocks.
Examples
Display only files on this disk, show "Human-readable" output and traverse to a depth of 2 levels down, starting from the home directory:
$ du -cxhd 2 ~
Display a grand total of files on this disk, show "Human-readable" output and traverse to a depth of 1 level down, starting from / the root directory:
$ sudo du -cxhd 1 /
In Mountain Lion and greater, ./DocumentRevisions-V100 is used to store previous versions of auto-saved documents, this can be turned off in macOS preferences.
“Never go to a doctor whose office plants have died” ~ Erma Bombeck
Related macOS commands:
df - Display free disk space
ln - Make links between files (hard links, symbolic links)
quota - Display disk usage and limits
open - open a file or folder
fts(3), compat(5), symlink(7), quot(8)