ncdu: See What Is Eating the Disk, Then Walk Into It

du prints a number. ncdu lets you open the directory that number came from and see the next one down.

ncdu scans a tree and shows a navigable list, biggest first. It is the interactive cousin of du, and of dust if you already have that page. The scan can be saved and opened later, which matters when the tree is slow. Checked on ncdu 2.9.2: -o wrote a JSON scan with -1 -q (one update, quiet), and -f read that scan back.

install

macOS
# macOS
brew install ncdu
Debian/Ubuntu
# in the default repos
sudo apt install ncdu
Fedora
# in the default repos
sudo dnf install ncdu
Arch
# in the default repos
sudo pacman -S ncdu

examples

# Open the UI on the current directory. Arrow keys move, enter descends, q quits. This stays in the foreground
ncdu
# Write a JSON scan and exit. -1 is one refresh, -q is quiet
ncdu -o scan.json -1 -q .
# Open a saved scan instead of walking the disk again
ncdu -f scan.json

pro tip

-x stays on one filesystem, so a scan of / does not wander into other mounts. Delete is a keystroke inside the UI (d). Treat that as rm, because it is.

honest limits

The UI is not a script. If you need a number in a pipeline, use du or dust. A scan of a network mount will be as slow as that mount. d deletes for real. ncdu will not ask a second time in the way you hope.