Skip to content

folder_dupes · folder_du · folder_checksum · folder_shred · folder_scan

Five maintenance tools. All are standalone, multi-threaded (--jobs -1 = all cores), and dependency-free. Destructive actions are safe by default.

folder_dupes — find duplicate files

folder_dupes <path...> [--min-size <bytes>] [--delete [--apply]] [-j -1]

Buckets files by size, then hashes same-size buckets (FNV-1a) and groups by content. Prints each group of 2+ identical files and the reclaimable space. --delete removes the extras (keeps the first path); it's a dry-run unless --apply.

folder_dupes ~/Pictures                       # just report
folder_dupes ~/Pictures --delete --apply      # keep one of each, delete the rest

folder_du — disk usage with bars

folder_du [path] [--depth N] [--top N]

Sums the recursive size of each child, sorts largest-first, and draws a percentage bar so space hogs stand out. --depth shows nested levels indented; --top limits to the N biggest per level.

folder_checksum — write / verify checksums

folder_checksum <path...> [-o checksums.txt]    # write "<hash>  <path>" lines
folder_checksum --verify checksums.txt          # re-hash and compare

Verify reports OK / CHANGED / MISSING per file and exits non-zero on any mismatch — handy in scripts and CI. Uses the suite's fast FNV-1a hash (good for change detection, not a cryptographic digest).

folder_shred — overwrite, then delete

folder_shred <path...> [--passes N] [-R] [--force]

Overwrites each file with random data --passes times (default 3), then deletes it. Dry-run unless --force.

Warning

On SSDs and copy-on-write / journaling filesystems (or with snapshots), in-place overwrite may not erase the original blocks. Treat this as best effort, not a guarantee.

folder_scan — find secrets in text files

folder_scan [path...] [--regex <pattern>] [--no-builtin] [-j -1]

Greps text files (binaries skipped) for built-in secret patterns — AWS keys, private-key headers, Google API keys, Slack tokens, JWTs, and hard-coded password=/secret= assignments — plus any --regex you add. Reports file:line with a redacted snippet, and exits non-zero if anything matched (so it can gate a commit/CI). A defensive tool: catch leaked credentials in your own trees before they ship.