expect-lite is an quick and easy command line automation tool. Written in expect, it is designed to directly map an interactive terminal session into an automation script. expect-lite scripts use special character(s) at the beginning of each line to indicate the action. Basic expect-lite scripts can be created by simply cutting and pasting text from a terminal window into a script, and adding '>' '<' characters. No knowledge of expect is required. Expect-lite is targeted at the verification testing environment, and will produce a Pass/Fail result at the end of the script. However, its use is not limited to this environment. It includes a powerful debugger with breakpoints, step/skip, and the ability to copy/paste expect-lite lines right into a running script.
JCmdLineProgress is a Java library to assist with progress reporting on the command line. Using simple hooks, a program can send progress messages and status information to the command line. Also, text based "spinners" can be used to provide visual confirmation that a long running but quiet program is still running. A working example is provided.
Bashinator is a bash shell script framework. It provides flexible and powerful message handling that lets you print to stdout, log (to syslog or a logfile), and mail messages with a single message function. Exhaustive information is included in messages to ease debugging. This information includes timestamps, message severity, source file, line numbers, and function names. A facility for tracing the function call stack is provided. Sub-command output can be logged by capturing the stdout/stderr of external commands to a dedicated temporary logfile. The framework also provides lockfile handling.
Roster is DNS management software for use with Bind 9. It is licensed under the BSD license. It is written in Python, and uses a MySQL database with an XML-RPC front-end. It contains a set of command line user tools that connect to the XML-RPC front-end. The config files for BIND are generated from the MySQL database, so a live MySQL database is not needed. The software has four basic components. The core includes the database interface and core API, and contains the authorization layer. The server is an SSL enabled multi-threaded XML-RPC server. It also contains the LDAP authentication layer. The config manger creates BIND config files using the core API, and handles pushing the files to their appropriate servers. The user tools contain over 20 tools to create, list, and remove records, zones, views, DNS servers, DNS server sets, groups, users, and the assignments between them all. There is currently support for views, many DNS servers in many configurations, IPv6, user/group authorization, LDAP authentication, and Unicode hosts.
The Teleport command is a replacement for the traditional cd command. More accurately, it's a wrapper around the cd command, with various improvements. It keeps a history of the directories you have visited. You can easily jump to any directory in your history. You can display your history. You can easily create aliases for directories to make it even easier to jump to them.
id321 is a command line ID3 tag manipulation tool. It supports reading and writing of ID3 tags of the following versions: ID3v1, ID3v1.1, ID3v1.2, ID3v1.3, enhanced tag, ID3v2.2, ID3v2.3, and ID3v2.4. The utility can force standards of ID3 tags in order to fix existing non-standard tags.
Read Arguments is a PHP class that reads and validates shell command line arguments. It supports mandatory arguments, optional arguments, switch arguments, multiple alternatives to an option switches, and a special argument that shows a nicely formatted help usage message. The class extracts argument values into an array if the argument rules are validated.