diskonaut
Visualize disk space usage
TLDR
Start diskonaut in the current directory
Start diskonaut in a specific directory
Show file sizes rather than their block usage on the disk
Disable deletion confirmation
SYNOPSIS
diskonaut [options] [path]
PARAMETERS
-h, --help
Prints help information and exits.
-V, --version
Prints version information and exits.
-s, --show-hidden
Shows hidden files and directories (those starting with '.').
-i, --ignore-errors
Continues scanning even if errors are encountered in some directories.
-m
Ignores files smaller than the specified SIZE (e.g., 1K, 1M, 1G).
SIZE can be in bytes, K, M, G, T.
-a, --apparent-size
Uses apparent size (actual bytes of file content) instead of disk usage (allocated blocks). Useful for sparse files.
-u, --no-unicode
Uses ASCII characters instead of Unicode for progress bars and UI elements.
-p, --no-progress
Disables the progress indicator during the initial scan.
-c
Sets the color scheme for the TUI (e.g., dark, light, solarized-dark, monokai).
-C, --no-color
Disables all color output.
-D, --no-delete-confirm
Caution: Deletes files/directories without asking for confirmation. Use with extreme care as this action is irreversible.
-j
Specifies the number of parallel jobs to use for scanning (defaults to the number of logical cores).
[path]
The starting directory to scan. If omitted, diskonaut scans the current working directory.
DESCRIPTION
diskonaut is a modern, interactive disk usage analyzer for the terminal. It provides a user-friendly TUI (Text User Interface) to visualize disk space consumption, navigate directories, delete files, and sort entries by size or name. Written in Rust, it aims for speed and efficiency, offering an intuitive way to manage disk space directly from the command line. It displays directory sizes, file counts, and allows drilling down into subdirectories to pinpoint large files or folders consuming space. Its interactive nature makes it a powerful and efficient alternative to traditional du commands for exploratory disk space management.
CAVEATS
Using the -D or --no-delete-confirm option can lead to irreversible data loss if not used with extreme caution.
While designed for efficiency, the initial scanning of very large directories with millions of small files can still take a noticeable amount of time.
diskonaut provides an intuitive interface but users should still exercise caution when deleting files, especially in system directories.
INTERACTIVE NAVIGATION AND KEYBINDINGS
Once launched, diskonaut offers a highly interactive experience with several keybindings:
- ?: Displays a help screen with all available keybindings.
- j/k or Arrow Up/Down: Navigate through entries (files/directories).
- h/l or Arrow Left/Right: Go up to the parent directory / enter the selected directory.
- d: Delete the selected file or directory (requires confirmation by default).
- s: Cycle through different sorting options (by name, size, or item count).
- g: Toggle between apparent size and disk usage for displayed sizes.
- q: Quit the application.
INSTALLATION
diskonaut is often installed via Rust's package manager cargo:
cargo install diskonaut
Many Linux distributions also provide diskonaut in their official package repositories (e.g., apt install diskonaut on Debian/Ubuntu, dnf install diskonaut on Fedora, pacman -S diskonaut on Arch Linux).
HISTORY
diskonaut emerged as part of a new generation of command-line tools written in Rust, focusing on performance, memory safety, and an enhanced user experience over older utilities. Its development began around 2018-2019, quickly gaining popularity for its interactive TUI approach to disk space analysis. It offers a more dynamic and visually engaging alternative to static du outputs and provides a modern, often faster, alternative to similar tools like ncdu.