~dricottone/my-utils

ref: cdecc83ac73daa2049e39ead03af205316d8c417 my-utils/README.md -rw-r--r-- 2.9 KiB
cdecc83aDominic Ricottone Cleaning up temp files 4 years ago

#my-utils

A set of scripts that I use frequently. Written in a mix of shell (some POSIX sh, some bash), sed, awk, and so on. Any dependencies beyond the POSIX standard and inter-dependency are noted.

#Scripts

Executable Description Extra Dependencies
check-x Check if an X11 server is running
ctdir Count entries in a target directory(ies)
debom Remove BOM from a target file bash
enumerate Dumps HTML from an 'epub' e-book archive bash, zipinfo, unzip, w3m
epub Rename files in current directory into sequential numbers bash
mkbak Create a backup of a target file bash
mktar Wrapper around tar for easier compression bash *
rand Get a random number within an inclusive range shuf
rebom Add BOM to a target file
rmtar Delete 'tar' archive files
rmzip Delete 'zip' archive files
stop-at Re-print until a pattern is matched
tarcat Print contents of target archive file(s) *
unittest Wrapper around Python's unittest module python3, GNU or New (AT&T) awk
untar Wrapper around tar for easier decompression *
whichcat Print all lines from a program
whiched Open a program with your editor
whichhead Print the first 10 lines from a program bash
whichvi Open a program with your visual editor
whisper Wrapper around espeak to mirror say in macOS espeak
wttr Wrapper around wttr to fix double-wide runes for some fonts wego

* While you technically won't run into an error, these scripts do expect tar to support Zstandard, which isn't necessarily POSIX standard.

All scripts support -h and --help for printing built-in documentation.

Almost all scripts do nothing if no input arguments are given. (The exceptions are whisper and wttr.)

#Development

These being re-used scripts, there's been a great deal of feature creep, bikeshedding, and over-engineering. That is to say, there's a lot of uncertainty as to how reliable these scripts are. To mitigate these concerns, shellcheck is a development dependency. A test suite is in the making, and hopefully new entrants to this repository will come with tests.

#License

If you really want to use anything in this repository-and I need to stress if you really want to-just go right ahead. I'm licensing everything under GPL because I'd appreciate you letting me know I messed something up. But you really shouldn't try using anything here in production...