LinuxCommandLibrary

diskonaut

Visualize disk space usage

TLDR

Start diskonaut in the current directory

$ diskonaut
copy

Start diskonaut in a specific directory
$ diskonaut [path/to/directory]
copy

Show file sizes rather than their block usage on the disk
$ diskonaut --apparent-size [path/to/directory]
copy

Disable deletion confirmation
$ diskonaut --disable-delete-confirmation
copy

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 , --min-file-size
    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 , --color-scheme
    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 , --jobs
    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.

SEE ALSO

du(1), ncdu(1), df(1), tree(1), baobab(1)

Copied to clipboard