cntr
Fast, case-insensitive ASCII letter frequency analysis for any text file.
cntr FILEC11 · POSIX · OPEN SOURCE
Twenty-seven focused command-line tools now ship in both native C11 and readable Python—with bounded inputs, Unix administration, threat hunting, and tests designed to break them.
$ git clone https://github.com/drmbios/pydev
$ cd pydev && make
✓ built 27 native tools
$ bin/cntr README.md
a 131
b 12
c 38
▋
01 / THE TOOLBOX
Each utility stays deliberately small, composable, and predictable—the Unix philosophy without the mystery behavior.
Fast, case-insensitive ASCII letter frequency analysis for any text file.
cntr FILEA Mastermind-style four-digit terminal game with secure randomness and feedback.
codebreaker [ATTEMPTS]Extract quoted link destinations from bounded HTML input in linear time.
parser_html FILESearch or install packages through a shell-free, injection-resistant launcher.
qpipper ACTION PACKAGEInspect compact or formatted JSON with explicit input and nesting limits.
readjson FILEStore and update question-answer entries using prepared SQLite statements.
sql DB add NAME ANSWERPull names and telephone numbers from vCard files into a clean summary.
contacts FILE.vcfA complete local two-player tic-tac-toe game with guarded input.
tttA bounded, error-aware text writer for quick terminal workflows.
write2file FILE TEXTCalculate standard CRC-32 values for fast file integrity comparisons.
checksum FILE...Inspect binary data as aligned hexadecimal bytes and printable ASCII.
hexview FILE [MAX_BYTES]Extract meaningful printable runs from bounded binary input.
stringsx FILE [MIN_LENGTH]Generate secure passwords from unbiased operating-system randomness.
randpass [LENGTH]Translate Linux x86-64 syscall numbers into names and plain-language explanations.
syscallx NUMBER...List files with numeric permissions and true recursive directory sizes.
lsx [-aSr] [PATH]Trace syscalls and forked process dependencies as an indented tree.
traceflow COMMAND [ARG...]Combine CPU, memory, load, disk, and network graphs with separate CSV logs.
syswatch --count 10 --log logsMap logged-in users to their processes and safely dry-run session termination.
sessionx --terminate USERInspect process owners, memory, threads, executables, and open descriptor counts.
procexp [PID]Summarize kernel, architecture, processor, page size, CPU count, and physical memory.
coreinfoReport the real resolution of available POSIX realtime, monotonic, and CPU clocks.
clockresConvert integers among decimal, hexadecimal, octal, and binary with overflow checks.
numconv NUMBERDiscover all hard links sharing a target file's device and inode.
linkscan FILE [ROOT]Inventory standard Linux and macOS startup entries without loading or executing them.
autostartxQuery WHOIS services with input validation, timeouts, and a bounded response.
whoisx example.comHunt malware, miners, risky persistence, and rootkit indicators with bounded heuristics and hash-verified signature updates.
antivermis --check-update URL DB02 / RECENT UPDATES
The project now maintains matching Python and C11 editions, with security boundaries documented and exercised in both.
Added independent Python 3.9+ counterparts for every user-facing native tool, including Antivermis and the Linux administration suite.
make python-checkAdded Antivermis signature updates with HTTPS-only remote feeds, SHA-256 verification, parser validation, and atomic installation.
antivermis --update-db URL DBAdded Linux administration plus six cross-platform Sysinternals/NirSoft-inspired terminal tools.
traceflow · syswatch · coreinfoAdded binary tools, optional SQLite builds, parser limits, abuse tests, and sanitizer CI.
make sanitizeConverted the repaired Python sketches into strict C11 tools and launched the GitHub Pages site.
make && make check03 / BUILT DEFENSIVELY
These utilities assume files can be oversized, strings malformed, and arguments malicious. Limits are part of the product—not an afterthought.
Explore the abuse tests ↗General readers cap input at 16 MiB; Antivermis defaults to 32 MiB and hard-caps files at 64 MiB.
Grammar, nesting, and output growth are checked before rendering.
Package arguments never become executable shell syntax.
Sanitizers, special-file rejection, and symlink tests run across the suite.
04 / GET STARTED
You need a C11 compiler, Make, and the SQLite 3 development library. Python is only required for the optional pip wrapper.
$ git clone https://github.com/drmbios/pydev.git
$ cd pydev
$ make && make check