The du command estimate file space usage and summarize disk usage of each FILE, recursively for directories.
It displays the file system block usage for each file argument and for each directory in the file hierarchy rooted in each direc tory argument. If no file is specified it will use current directory.
du command Examples
Type du to display usage in current directory :
$ duPass -h option to display output in Byte, Kilobyte, Megabyte, Gigabyte, Terabyte and Petabyte (Human-readable output)
$ du -hDisplay the name and size of each png file in the /ramdisk/figs/ directory as well as a total for all of the pngs:
$ du -hc /ramdisk/figs/*.pngAnother useful option is -c which produce a grand total:
$ du -cShow the disk usage of the /home/vivek subdirectory:
$ du /home/vivekShow only a summary of the disk usage of the /home/vivek
$ du -hs /home/vivekExclude files that match PATTERN. For example do not count *.obj or *.jpg files:
$ du -h --exclude='*.obj'
$ du -h --exclude='*.jpg'A PATTERN is a shell pattern (not a regular perl or other expression). The pattern ? matches any one character, whereas * matches any string.
Pipes and filters with du
Now display everything sorted by filesize:
$ du -sk .[A-z]* *| sort -nDisplay screenful output at a time as du generate more output than can fit on the console / screen:
$ du -h | lessTo find top 3 directories, enter :
$ du -sk * | sort -nr | head -34620348 var
651972 home
27896 usr
21384 lib64Working without du
Finally here is one liner (without du command) that prints top 10 filesize in Mb (thanks to dreyser for submitting idea):
# find /var -type f | xargs ls -s | sort -rn | awk '{size=$1/1024; printf("%dMb %s\n", size,$2);}' | headOutput:
31Mb /var/crash/_usr_lib_firefox_firefox-bin.1000.crash
22Mb /var/cache/apt/archives/linux-image-2.6.20-16-generic_2.6.20-16.28_i386.deb
16Mb /var/lib/apt/lists/in.archive.ubuntu.com_ubuntu_dists_feisty_universe_binary-i386_Packages
15Mb /var/cache/apt/archives/linux-restricted-modules-2.6.20-16-generic_2.6.20.5-16.28_i386.deb
9Mb /var/cache/apt/srcpkgcache.bin
9Mb /var/cache/apt/pkgcache.bin
8Mb /var/cache/apt/archives/firefox_2.0.0.4+1-0ubuntu1_i386.deb
7Mb /var/cache/apt/archives/linux-headers-2.6.20-16_2.6.20-16.28_i386.deb
5Mb /var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_feisty_main_binary-i386_Packages
5Mb /var/lib/apt/lists/in.archive.ubuntu.com_ubuntu_dists_feisty_universe_source_Sources