Disk Usage Analyzer

Sebastian Thiel·Byron.dua-cli

View disk space usage and delete unwanted data, fast.

dua (→ Disk Usage Analyzer) is a tool to conveniently learn about the usage of disk space of a given directory. It's parallel by default and will max out your SSD, providing relevant information as fast as possible. Optionally delete superfluous data, and do so more quickly than rm.

winget install --id Byron.dua-cli --exact --source winget

Latest 2.39.0·July 28, 2026

Release Notes

The main feature this release is parallel deletion, both for collecting files to be deleted as well as the deletion itself. On my local disk, it now reaches 144k files/s overall deletion performance. New Features

  • delete files in parallel Recursive deletion now uses the same worker count selected with --threads for the initial filesystem scan, to accelerate the collection of files to be deleted, as well as the deletion of files. When marked directories are deleted, dua now:
    1. walks the selected tree without (following symbolic links as usual)
    2. collects regular files and symbolic links;
    3. removes those entries across the configured workers;
    4. removes directories from deepest to shallowest after their contents are gone on a single thread. A value of 1 keeps deletion effectively serial. Larger values allow independent file removals to overlap, which is most useful for large directory trees or filesystems with concurrent metadata operations.

Bug Fixes

  • open errors and cleanup/gitignored footer labels

Refactor

  • use jwalk for parallel, symlink-safe deletion Replace the hand-rolled stack traversal in delete_directory_recursively with a jwalk WalkDir (follow_links=false, skip_hidden=false). This is the same walker the rest of dua uses for scanning, so deletion now benefits from parallel traversal on multi-core machines. Behaviour preserved:
    • Symlinks are removed without following them (remove_file on the link).
    • Directories are removed deepest-first so each remove_dir sees an empty directory.
    • Error counting and byte accounting unchanged. Adds unit tests covering: single file, nested tree, symlink safety, and missing-path error reporting.

Test

  • Make traversal tree tests filesystem-independent That way, tests will work locally.

Commit Statistics

  • 10 commits contributed to the release over the course of 4 calendar days.
  • 8 days passed between releases.
  • 4 commits were understood as conventional.
  • 0 issues like '(#ID)' were seen in commit messages

Commit Details view details

  • Uncategorized
    • Prepare changelog for release (254ea4f)
    • Merge pull request #353 from Solaris-star/fix/43-jwalk-parallel-deletion (0f55a5c)
    • Delete files in parallel (b04f9f3)
    • Review (cd82444)
    • Make traversal tree tests filesystem-independent (48fb6df)
    • Use jwalk for parallel, symlink-safe deletion (7e9d0a8)
    • Merge pull request #352 from l0rush1/main (496bd78)
    • Rustfmt annotation_message match arm (3dba5a4)
    • Open errors and cleanup/gitignored footer labels (f2a957a)
    • Fix: interactive exit code and footer entries/s (1b3f60d)

Installer type: zip

x64020FBE4D9E9636453820032B7FB7AF80582AE02B8E67695FB200EAC51706F990

Details

Homepage
https://github.com/Byron/dua-cli
License
MIT
Publisher
Sebastian Thiel
Support
https://github.com/Byron/dua-cli/issues
Copyright
© Sebastian Thiel
Moniker
dua

Tags

cleanerdisk-usage-analyserdisk-usage-analyzerdiskusageanalyserdiskusageanalyzerduacliharddiskharddriverequirescmdspace-usessd

Older versions (14)

2.38.1
x641496059BA245743504A8C3E22BBB29C10278E1F4454A10ADAE59042630BEA4FA
2.38.0
x64C627401B5644A2D0179714FC22946ED6E2F646ED528CA36BB3F6B790C3C8529C
2.37.1
x64943B26F91446549B2ECD418086BCA31C54E0EBB6F3682DD70F91EF42BC2E020C
2.37.0
x64E66A99E6139B076F8DA4EF269CE5452EF6636DFBA66D4495F08AE18AD2C369C3
2.36.0
x6401BF5A17FC9EC0C569EB66540F4C88FDE0CAB868F1F608D9965FD5C65FCC625A
2.35.0
x64298FED37A89C5FFF7EB6A9FDDD32A7910A3E87C8EBA5BD6D7AD3CBC3310FF4C5
2.34.0
x64ABBD93E4D8EAF4D1B9181310A0240E37FC3D3E107A70870289125C0171FEFCA9
2.33.0
x865709EB0B95AFF758A535BA485B00890DB5824ED7E90232127DC4C68485FD8E1F
x6424CAF507E3B07B4E8A69C6182D7585129A1020AEAA76545FD5DE536978B22AC3
2.32.2
x8680F42C40B8F5B3F3BE83A77C456F50FEF89F29B6B8131E4E6E26B1278B399DEC
x6424DC26E87C09C21926BE2223E2DAA880150B806A05EE4199913ACB9A348E62B4
2.32.1
x865E07C495D6971DB244C76E0EDE2BB97189CD4835D67C76AF71FCD6C06AE0A0CF
x6478C58CBDD7BC21BC52413F3990C6076EB80E3C0A9B27A92DEC1FD40E5DFDA78D
2.32.0
x86AE7AC78E6CC44AC39AA49F1AE7CB90D52D6D56C547F81F88EE5F4F96BF12243E
x64EB697C75361479C1E645CC4D7BB54BF83D6900E79159D308E5B363C36C0BABE4
2.30.1
x862A0B41F387C9516F98675D4C75E43B1DF77EFFC88D11ED9F169CD4AB116A7181
x64EC2CE2ED27E098E117BDA12E1A1C262477134EA1ED5F96DA20D8BF6CDFC10707
2.30.0
x866359CEB2B0EEC50D1C77F8E95A8FBAE8BE27750FB0F9D8EF1308AD1442621080
x6403926D799703342D644EBE2C4AA7141B5A71CBDBAFE4CC3E36C83DE32AE3644C
2.29.2
x864C9523BA0BADF681D1EFBFE85D6AC0D51A664BE08D1560F978B12A270CD713E9
x641B07D998F254F4AF2FEA33D0C304831D1AFEAE8C1990318201F45F16707A402C