Over the years I’ve written a bunch of software; most of it is small utilities to make shell programming easier or solve a specific problem I’ve had. I don’t know how useful any of this will be to other people, but in the best Free/Open Source Software spirit I can manage, I’m making it available. If you find it useful, great; if not, well, at least no one will accuse me of hoarding my work.
I don’t entirely agree with the GNU Public License, so I’ve come up with a license of my own; I think you’ll find it quite reasonable.
Now then, on to the software …
- README
- A brief overview of this collection of tools.
- INSTALL
- The
INSTALLfile that describes how to build and install these programs.
- BACKGROUND
- A brief history and “justification” of my tools.
- addrtool
- Perform common IP address/CIDR/netmask calculations.
- baseconv
- Convert integers between bases 2, 8, 10, 16, 32, 62, and 64.
- dateops
- Perform simple date operations like yesterday, tomorrow, 5 days in the future, etc.
- dseq
- Print sequences of dates.
- edate
- POSIX
date(1), with extensions (single-digit day, day suffix, epoch seconds, microseconds, and operating on a specified date) and deletions (can’t be used to set the system date), and all done with 100% POSIX-compliant library calls.
- getman
- Used with hexify (see below).
- hd
- Display a file in hexadecimal and ASCII.
- hexify
- Embed plain ASCII man pages inside a C program.
- isprint
- Check a file for “unprintable” characters.
- lstat
- A command-line interface to the
lstat(2)system call, with lots of options.
- mkstemp
- A command-line interface to the
mkstemp(3)library call.
- nthday
- Print a selected day of the month.
- note
- A very simple program for managing notes to myself.
- numcmp
- Used in shell programming to compare two numbers (because sometimes the shell makes it difficult to deal with negative numbers, and floating point numbers are right out).
- openCreatExcl
- A command-line interface to the
open(2)system call, withflagsset toO_WRONLY | O_CREAT | O_EXCL.
- postoffice
- A small system for processing email messages after they have been delivered.
- st
- A very simple program for compiling and printing status reports.
- strcmp
strncmp- A command-line interface to the
strcmp(3)andstrncmp(3)library calls (because neither POSIXtest(1)norsh(1)can do this.
All the software is collected in a single gzipped tar file. Here’s an abbreviated revision history of that file:
| 2010/01/03 @ 12:50 -0500 | first posting | |
| 2010/01/04 @ 13:40 -0500 | added dseq | |
| 2010/01/04 @ 17:09 -0500 | added nthday | |
| 2010/01/05 @ 12:16 -0500 | added hd, fixed bug in pre-printed man page for addrtool | |
| 2010/01/10 @ 12:42 -0500 | added BACKGROUND, isprint; fixed a minor bug in the man page for edate; changed strcmp and strncmp to print only words (no more numbers, no -v flag) | |
| 2010/01/25 @ 18:25 -0500 | fixed bugs in isprint, postalworker |
I presented some of this software at the December 2009
BBLISA
meeting. My slides
(PowerPoint
and
PDF)
give more information about a subset of my tools (in particular,
note and st).