duf - Man Page

Disk Usage/Free Utility

Examples (TL;DR)

Synopsis

duf [options...] [argument...]

Description

Simple Disk Usage/Free Utility.

Features:
  • User-friendly, colorful output.
  • Adjusts to your terminal's theme & width.
  • Sort the results according to your needs.
  • Groups & filters devices.
  • Can conveniently output JSON.

Options

-all

include pseudo, duplicate, inaccessible file systems

-avail-threshold

specifies the coloring threshold (yellow, red) of the avail column, must be integer with optional SI prefixes

-hide

hide specific devices, separated with commas: local, network, fuse, special, loops, binds

-hide-fs

hide specific filesystems, separated with commas

-hide-mp

hide specific mount points, separated with commas (supports wildcards)

-inodes

list inode information instead of block usage

-json

output all devices in JSON format

-only

show only specific devices, separated with commas: local, network, fuse, special, loops, binds

-only-fs

only specific filesystems, separated with commas

-only-mp

only specific mount points, separated with commas (supports wildcards)

-output

output fields: mountpoint, size, used, avail, usage, inodes, inodes_used, inodes_avail, inodes_usage, type, filesystem

-sort

sort output by: mountpoint, size, used, avail, usage, inodes, inodes_used, inodes_avail, inodes_usage, type, filesystem

-style

style: unicode, ascii

-theme

color themes: dark, light, ansi

-usage-threshold

specifies the coloring threshold (yellow, red) of the usage bars as a floating point number from 0 to 1

-version

display version

-warnings

output all warnings to STDERR

-width

max output width

Usage

You can simply start duf without any command-line arguments:

 $ duf

If you supply arguments, duf will only list specific devices & mount points:

 $ duf /home /some/file

If you want to list everything (including pseudo, duplicate, inaccessible file systems):

 $ duf --all

You can show and hide specific tables:

 $ duf --only local,network,fuse,special,loops,binds

 $ duf --hide local,network,fuse,special,loops,binds

You can also show and hide specific filesystems:

 $ duf --only-fs tmpfs,vfat

 $ duf --hide-fs tmpfs,vfat

...or specific mount points:

 $ duf --only-mp /,/home,/dev

 $ duf --hide-mp /,/home,/dev

Wildcards inside quotes work:

 $ duf --only-mp '/sys/*,/dev/*'

Sort the output:

 $ duf --sort size

Valid keys are: mountpoint, size, used, avail, usage, inodes, inodes_used, inodes_avail, inodes_usage, type, filesystem.

Show or hide specific columns:

 $ duf --output mountpoint,size,usage

Valid keys are: mountpoint, size, used, avail, usage, inodes, inodes_used, inodes_avail, inodes_usage, type, filesystem.

List inode information instead of block usage:

 $ duf --inodes

If duf doesn't detect your terminal's colors correctly, you can set a theme:

 $ duf --theme light

duf highlights the availability & usage columns in red, green, or yellow, depending on how much space is still available. You can set your own thresholds:

 $ duf --avail-threshold="10G,1G"

 $ duf --usage-threshold="0.5,0.9"

If you prefer your output as JSON:

 $ duf --json

Notes

Portions of duf's code are copied and modified from https://github.com/shirou/gopsutil.

gopsutil was written by WAKAYAMA Shirou and is distributed under BSD-3-Clause.

Authors

duf was written by Christian Muehlhaeuser <https://github.com/muesli/duf>

Info

2022-02-08 Disk Usage/Free Utility