Skip to main content

A CLI tool for interactive disk storage analysis on Windows.

Project description

stman

Windows' built-in storage tools don't tell you much. Storage Sense shows you a pie chart, Explorer makes you right-click every folder individually. I wanted something that would actually show me where my disk space was going, all at once, fast.

stman is a CLI tool that scans your drives and directories and displays sizes in a sorted table. Navigate into any folder to see what's inside it.

Installation

pip install stman

Requires Python 3.8+ on Windows 10/11.

Usage

stman

Commands

Command Description
goto <path> Jump to a specific path
b Go back one directory
top Go to drive root
r Refresh current view
togglex Show/hide inaccessible folders
clearcache Clear cached sizes
help List all commands
exit Quit

Benchmark Mode

stman --benchmark <path>

Runs stman's scanner against PowerShell's Get-ChildItem on the same directory (with disk cache pre-warmed for both) and reports the comparison.

Benchmarks

Benchmarking: C:\Program Files
──────────────────────────────────────────────────
  stman (C++ DLL):     0.63s
  PowerShell GCI:      14.28s
  Speedup:             22.5x
──────────────────────────────────────────────────

Benchmarking: C:\Users\glcon
──────────────────────────────────────────────────
  stman (C++ DLL):     2.06s
  PowerShell GCI:      13.54s
  Speedup:             6.6x
──────────────────────────────────────────────────

Speedup varies with directory width — wider trees give the thread pool more parallel work to distribute. C:\Program Files has many independent top-level subdirectories; C:\Users is deeper and narrower.

How it works

The scanner is a C++ DLL called via Python's ctypes FFI. It uses Win32's FindFirstFileExW with FIND_FIRST_EX_LARGE_FETCH for fast directory enumeration, and distributes subdirectories across a thread pool sized to hardware_concurrency(). The Python layer handles the CLI, caching, and display.

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

stman-0.2.0.tar.gz (261.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

stman-0.2.0-py3-none-any.whl (263.5 kB view details)

Uploaded Python 3

File details

Details for the file stman-0.2.0.tar.gz.

File metadata

  • Download URL: stman-0.2.0.tar.gz
  • Upload date:
  • Size: 261.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for stman-0.2.0.tar.gz
Algorithm Hash digest
SHA256 3e72f254edbf360f19d3288299ca8c99f16d93e906a589e0e8334f6f2af95877
MD5 6aa17495487f721485f329a9f63d12e8
BLAKE2b-256 89072c9ca3b3f9daef099b5df376d8196c4265c329b1a0fdb7d841c015699452

See more details on using hashes here.

File details

Details for the file stman-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: stman-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 263.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for stman-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 103a9fe2fa7bde11310ab8a4929349ed157621623fe3c50ee9183c855489bf92
MD5 b854d60a174433447dbd5678e3b848cf
BLAKE2b-256 da7b39ce3c4ca8623294a68f298b6a571c3c90d542d27e5bb447f9ffbd5b0dde

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page