1.\" Copyright (c) 1990, 1993 2.\" The Regents of the University of California. All rights reserved. 3.\" 4.\" Redistribution and use in source and binary forms, with or without 5.\" modification, are permitted provided that the following conditions 6.\" are met: 7.\" 1. Redistributions of source code must retain the above copyright 8.\" notice, this list of conditions and the following disclaimer. 9.\" 2. Redistributions in binary form must reproduce the above copyright 10.\" notice, this list of conditions and the following disclaimer in the 11.\" documentation and/or other materials provided with the distribution. 12.\" 3. Neither the name of the University nor the names of its contributors 13.\" may be used to endorse or promote products derived from this software 14.\" without specific prior written permission. 15.\" 16.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 17.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 18.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 19.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 20.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 21.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 22.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 23.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 24.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 25.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 26.\" SUCH DAMAGE. 27.\" 28.\" @(#)du.1 8.2 (Berkeley) 4/1/94 29.\" $FreeBSD$ 30.\" 31.Dd August 1, 2019 32.Dt DU 1 33.Os 34.Sh NAME 35.Nm du 36.Nd display disk usage statistics 37.Sh SYNOPSIS 38.Nm 39.Op Fl Aclnx 40.Op Fl H | L | P 41.Op Fl g | h | k | m 42.Op Fl a | s | d Ar depth 43.Op Fl B Ar blocksize 44.Op Fl I Ar mask 45.Op Fl t Ar threshold 46.Op Ar 47.Sh DESCRIPTION 48The 49.Nm 50utility displays the file system block usage for each file argument 51and for each directory in the file hierarchy rooted in each directory 52argument. 53If no file is specified, the block usage of the hierarchy rooted in 54the current directory is displayed. 55.Pp 56The options are as follows: 57.Bl -tag -width indent 58.It Fl A 59Display the apparent size instead of the disk usage. 60This can be helpful when operating on compressed volumes or sparse files. 61.It Fl B Ar blocksize 62Calculate block counts in 63.Ar blocksize 64byte blocks. 65This is different from the 66.Fl h, k, m, 67.Fl Fl si 68and 69.Fl g 70options or setting 71.Ev BLOCKSIZE 72and gives an estimate of how much space the examined file hierarchy would 73require on a filesystem with the given 74.Ar blocksize . 75Unless in 76.Fl A 77mode, 78.Ar blocksize 79is rounded up to the next multiple of 512. 80.It Fl H 81Symbolic links on the command line are followed, symbolic links in file 82hierarchies are not followed. 83.It Fl I Ar mask 84Ignore files and directories matching the specified 85.Ar mask . 86.It Fl L 87Symbolic links on the command line and in file hierarchies are followed. 88.It Fl P 89No symbolic links are followed. 90This is the default. 91.It Fl a 92Display an entry for each file in a file hierarchy. 93.It Fl c 94Display a grand total. 95.It Fl d Ar depth 96Display an entry for all files and directories 97.Ar depth 98directories deep. 99.It Fl g 100Display block counts in 1073741824-byte (1 GiB) blocks. 101.It Fl h 102.Dq Human-readable 103output. 104Use unit suffixes: Byte, Kilobyte, Megabyte, 105Gigabyte, Terabyte and Petabyte based on powers of 1024. 106.It Fl k 107Display block counts in 1024-byte (1 kiB) blocks. 108.It Fl l 109If a file has multiple hard links, count its size multiple times. 110The default behavior of 111.Nm 112is to count files with multiple hard links only once. 113When the 114.Fl l 115option is specified, the hard link checks are disabled, and these files 116are counted (and displayed) as many times as they are found. 117.It Fl m 118Display block counts in 1048576-byte (1 MiB) blocks. 119.It Fl n 120Ignore files and directories with user 121.Dq nodump 122flag 123.Pq Dv UF_NODUMP 124set. 125.It Fl r 126Generate messages about directories that cannot be read, files 127that cannot be opened, and so on. 128This is the default case. 129This option exists solely for conformance with 130.St -xpg4 . 131.It Fl s 132Display an entry for each specified file. 133(Equivalent to 134.Fl d Li 0 ) 135.It Fl Fl si 136.Dq Human-readable 137output. 138Use unit suffixes: Byte, Kilobyte, Megabyte, 139Gigabyte, Terabyte and Petabyte based on powers of 1000. 140.It Fl t Ar threshold 141Display only entries for which size exceeds 142.Ar threshold . 143If 144.Ar threshold 145is negative, display only entries for which size is less than the absolute 146value of 147.Ar threshold . 148.It Fl x 149File system mount points are not traversed. 150.El 151.Pp 152The 153.Nm 154utility counts the storage used by symbolic links and not the files they 155reference unless the 156.Fl H 157or 158.Fl L 159option is specified. 160If either the 161.Fl H 162or 163.Fl L 164option is specified, storage used by any symbolic links which are 165followed is not counted (or displayed). 166The 167.Fl H , 168.Fl L 169and 170.Fl P 171options override each other and the command's actions are determined 172by the last one specified. 173.Pp 174The 175.Fl h, k, m 176and 177.Fl Fl si 178options all override each other; the last one specified determines 179the block counts used. 180.Sh ENVIRONMENT 181.Bl -tag -width BLOCKSIZE 182.It Ev BLOCKSIZE 183If the environment variable 184.Ev BLOCKSIZE 185is set, and the 186.Fl h, k, m 187or 188.Fl Fl si 189options are not specified, the block counts will be displayed in units of 190that block size. 191If 192.Ev BLOCKSIZE 193is not set, and the 194.Fl h, k, m 195or 196.Fl Fl si 197options are not specified, the block counts will be displayed in 512-byte 198blocks. 199.El 200.Sh EXAMPLES 201Show disk usage for all files in the current directory. 202Output is in human-readable form: 203.Pp 204.Dl # du -ah 205.Pp 206Summarize disk usage in the current directory: 207.Pp 208.Dl # du -hs 209.Pp 210Summarize disk usage for a specific directory: 211.Pp 212.Dl # du -hs /home 213.Pp 214Show name and size of all C files in a specific directory. 215Also display a grand total at the end: 216.Pp 217.Dl # du -ch /usr/src/sys/kern/*.c 218.Sh SEE ALSO 219.Xr df 1 , 220.Xr chflags 2 , 221.Xr fts 3 , 222.Xr symlink 7 , 223.Xr quot 8 224.Sh STANDARDS 225The 226.Nm 227utility is compliant with the 228.St -p1003.1-2008 229specification. 230.Pp 231The flags 232.Op Fl cdhP , 233as well as the 234.Ev BLOCKSIZE 235environment variable, 236are extensions to that specification. 237.Pp 238The flag 239.Op Fl r 240is accepted but ignored, for compatibility with systems implementing 241the obsolete 242.St -xcu5 243standard. 244.Sh HISTORY 245The 246.Nm 247utility and its 248.Fl a 249and 250.Fl s 251options first appeared in 252.At v1 . 253.Pp 254The 255.Fl r 256option first appeared in 257.At III 258and is available since 259.Fx 3.5 . 260The 261.Fl k 262and 263.Fl x 264options first appeared in 265.Bx 4.3 Reno 266and 267.Fl H 268in 269.Bx 4.4 . 270The 271.Fl c 272and 273.Fl L 274options first appeared in the GNU fileutils; 275.Fl L 276and 277.Fl P 278are available since 279.Bx 4.4 Lite1 , 280.Fl c 281since 282.Fx 2.2.6 . 283The 284.Fl d 285option first appeared in 286.Fx 2.2 , 287.Fl h 288first appeared in 289.Fx 4.0 . 290.Sh AUTHORS 291.An -nosplit 292This version of 293.Nm 294was written by 295.An Chris Newcomb 296for 297.Bx 4.3 Reno 298in 1989. 299