The Advanced Bash Scripting Guide is both a reference and a tutorial on shell scripting. This comprehensive book, the equivalent of 1,000+ print pages, covers almost every aspect of shell scripting. It contains 382 profusely commented illustrative examples, a number of tables, and a cross-linked index/glossary. Not just a shell scripting tutorial, this book also provides an introduction to basic programming techniques, such as sorting and recursion. Included scripts are the Game of Life, a Perquackey variant, a Morse code trainer, and an implementation of the Gronsfeld Cipher. This book is suited for both individual study and classroom use. It covers Bash, up to and including version 4.2. Note that users of miniaturized single-board computers running Linux, such as the Raspberry Pi and the Beagle Bone, would find this Guide useful for learning and running Bash scripts to explore and expand the capabilities of these small, but powerful machines.
Why a milter archiver? If you are required to also log source and destination IPs and BCCs (additional rcpt to's not in a CC field communicated at the SMTP protocol level), then the only option is do this in the MTA, or in a milter application that has hooks in the MTA process (which is exactly why milter was invented). It uses a simple regex file that can be used with several *source target-mailbox rules to define what gets mirrored where. The archiver tries to be as quiet as possible. The possible methods to archive are SMTP, sendmail inject / Postfix inject, IMAP delivery, and milter-add recipient. It was build as a replacement for a Postfix BCC setup: (sender_bcc_maps = regexp:/etc/postfix/archive; recipient_bcc_maps = regexp:/etc/postfix/archive).
SYINF shows in brief a system's CPU brand and model, RAM size, disk space, operating system, regional parameters, and current date and time. It can run in interactive (menu) or batch mode. There are two versions, in the C and C++ languages. They have been tested on 20 (15) compilers, 26 (25) operating systems, and 18 architectures. (Figures in parentheses are for the C++ version.) Both versions are conveyed in source code form only, each as a single ~35 KB source text file.
netscript is a portable/multi-platform, lightweight TCP/UDP socket scripting system. It is intended to automate situations, built on a word-to-word ruleset response system. It includes wildcard support, character replacement, random replacement, argument inclusion, server timeout, initial send, display altering, multiple character dump formats, telnet protocol support, logging, program to socket dumping, executable ruleset support, reverse binding, module support, data truncation, data formatting, permission options, virtual hosting support, history storage, dynamic storage variables, directory placement, character omitting, timed rules, background support, syslog support, routing support, socket options, interactive mode, and graphical user interface support.
vobwalker walks through a .VOB file containing DVD video and extracts lists of VOBUs to a set of chapter files. Each file begins with a VOBU that has no predecessor (i.e., does not point at a preceding VOBU) and contains the list of VOBUs found by following the successor pointers along the list. Although it does not adjust the pointers in the VOBUs (but merely copies them from one file to another), the created chapter files are suitable for use by a program such as dvdauthor that expects to be responsible for filling in the VOBUs.
vobps2fix is a tool that runs through a set of .VOB files created by dvdauthor and tweaks them so that the Playstation 2 will play them without pausing. The Playstation 2 is a bit finicky about the DVD format and pauses frequently when encountering certain timestamps, even if the DVDs work on other players.