While I have made these programs publically available, I retain the
copyright to them. Please do not remove my name from any of them
particularly from the address output at the bottom of CGI script generated
doucuments. If you make modifications, please mail them back to me so that
others may share them.
Filenames and Paths
- mv_renum.sh
- A simple perl script which will find the largest number in the given
filenames, and prepend zeros to the number found in the other filesnames
so they list in the correct order. An option will let you specify the
number of digits to make all the numbers instead.
If this script is renamed to be "
mv_reseq" it will also
change all the numbers to remove any gaps, or with the right arguments add
gaps to the sequence. It is a VERY handy script.
Filesystems
- mount_encrypted
- With the system setup right, you do not need to need to become root to
mount a re-prepared encryted filesystem. This script allows just that
with password handling for both TTY and X-Windows, as well as good error
handling and reporting of any problem encountered.
I use this script both from the command line, shell scripts, and GUI
application launchers, menus, and filesystem mount programs.
- mount_media
- Mount/unmount '/media' filesystems such as USB and DVD by name,
from the command line.
X Windows
- xwin_find
- Wait for a specified window to appear, (or timeout), and return
that windows Xwindow-ID, for further processing. This is a loop wrapper
around the standard "xininfo" command.
Network
- Ping_Monitor. (Perl_Tk script)
- Display a table of hosts and indicate if the hosts are currently
pingable.
Graphics
- XbmBrowser v5.1b. (X Windows C program)
- This is an interactive X bitmap and pixmap browser.
The program is a must, for exploring and viewing my icon library, and
without which the library would have been an impossibility.
-
Gif trans and
Man Page and
Text Manual
- This is a patched version of the "giftrans" program. I use this program
in some of my icon library scripts to gather information about GIF
files. Particularly for spliting up GIF animations.
- Also see ImageMagick
Example Helper Scripts, and especially the "gif2anim" script.
Printing
- Lprng Accounting Sanatiser
- Script to do the handling of pagecount accounting in LPRng. It is
especially designed to handle unusual conditions, such as aborted print
jobs, printer resets, and detection of printing from a source, outside of
this print queue.
Mail Filters
- MH Send Filter (Shell Script)
- This script pretends to be the MH send program and collect the out
going mail. Which is passed to a mail filter of your choice, before
being passed to the real MH mail system `send' command.
This allows you to append signatures, add mail faces or just edit
outgoing mail in some fashion (PGP encryption?).
The script is installed by modifing your personal
".mh_profile" to use this command for the mh send,
as well as the real mh send command to use, and the mail filter
this script is to call.
- Unix Sendmail Filter (Shell Script)
- This script complements the above MH send filter but replaced the
normal system sendmail command.
To use this filter you specify this program in your personal
".mailrc". Unfortunately the filter called by this script
must be specified inside the script itself. The same output mail
filter can however be used for both MH and BSD mail systems.
- Outgoing Mail Filter (Shell Script)
- This script is my personal outgoing mail filter, which the above scripts
call. This scraipt actually adds signatures, mail face, and other mail
header modifications to my outgoing mail, automatically.
WWW Programs
- User Links. (CGI Perl Script)
- A Simple program to search the users home directories for a wide world
web public directory and output a ``User
Home Pages'' document at the time of the WWW request.
The program is designed for use with the NCSA, or Apatche Http
Server, but may be modified to work with other servers. Or for other
needs if required.
The program does assume that the password file contains user's real
names and not some sort of alias such a `Death Stalker'. This is the
only source of a users real name unless modified to use some other
source particular to the machine using it.
A recent modification is a Sort by Surname version of the program, assuming that the finger
name in the password file is their real name. This trys to sort the
users by their last name (which is assumed to be the last word in
their password files full name).
-
Guestbook. (CGI Perl Script)
- Another perl script which allows any user on a Web Server to have
a ``Guestbook'' on their home page.
The Guestbook itself must be writable by `nobody', and called
"guestbook.html", and can contain a opening comment and final
address. I used this as my own guestbook for about 6 years before
I discontinued it. Web users today are so much more apathetic about
things like this.
A ``QUERY_STRING'' included in the forms ACTION call to this program
contains the login name of person who's guestbook is to be updated,
and an optional flag allowing a particular guestbook to be `reversed'
so that the newest entries are first. Any entry added is also mailed
to that guestbook owner so that he can see new entries that were
added, and make a correction if necessary.
The Form input accepts four fields, containing the users `real name',
`email address', `home page' and a single line `comment'. The
last two are optional and can be left blank. From this a guestbook
entry is created and inserted. For an example form look at my own
guestbook input form.
The program is designed for use with the NCSA Http Server, but may be
modified to work with other servers. Or for other needs if required.
- Counter. (CGI Perl Script, using image filters)
- Counter Images Archive. (Gziped Tar file)
- A very simple counter script written in perl. This script features
- Call looks like a normal ".gif" image to WWW client
IE: no `query sting arguments' or other strange needs.
- Handle any number of counters on a server or page!
- Modify the counter format (images used, number format)
- Counter images can selected for each counter and can be
any size, and almost any image type.
- Internal defaults for a 8 digit `odometer'.
This is a very simple perl program which extracts the counter
location from the ``Extra URL path information'', when the script is
called. The counter image output by the program is handled by an external
image filter package such a ImageMagick or PbmPlus filters, under
the script s control. That is the script itself does not handle the
images!
Due to this use of external image filters, more complex counters can
be created using almost any set of `digit images' and can be used
to create
- Hexadecimal Images (if images for digits a-f are provided)
- Output text strings by concatanating images (given the images)
- Generate graphical text around counter (given images)
The counter is also easilly expanded to handle, and may have other
capabilities added to it in the future
- A counter surrounded by larger wrapper image
- Pre-generated Complex and time consuming images.
For example a raytraced 3 dimensional image of the count!
- Animated counter images.
- Wantever image you can create automatically via a program!
- Other information, such as current time, or the number of
items left, etc..
For more information have a look in my WWW Labortory at the information about
Anthony's Counter.
- test-cgi. (CGI Perl Script)
- This is a simple script I use for testing HTML forms and links
to see what the current server and client would supply to a CGI
script. All it does is output the following information...
- Current working directory of the script
- Environment Passed (Includes the CGI input, like QUERY_STRING)
- Decoded Query String
- Decoded Path Info
- Decoded Standard Input (CGI POST Information)
Basically all the information available to a cgi script when run.
This script is used in ``Sorcery of Form Input'' in my Castle's WWW Labortory.
- WWW Adventure Talk. (CGI Perl Script)
- This is the program I use to handle the ``talk to person'' type
forms I use in my Castle Adventure Home Page. But I make this
available for others to use.
A very simple program which is given a ``QUERY_STRING'', used to
locate a talk data file, and a simple form `message'. The message
is parsed so as to remove extra spaces, punctuation, and converted to
lowercase. It is then compared against the contents of the talk
data file and when a match is found the user's client is jumped
to the URL associated with that response.
If the users response or message is not known they are jumped to a
default URL also given in the data file. Also the unknown response
is (optionally) mailed to a particular person (me) so as to allow
unknown responses to be added later if appropriate, or to find
abusers of the adventure game.
For example this program is used to comunicate with Castle's
resident Dragon, which can be seen at Balcony over the Dragon's Lair deep in the Castle Dungeons.
- Blackboard. (CGI Perl Script)
- I created this program to use in the classroom of the castle. It
provides a way for passing WWW users to leave a message for the next
user. I have also linked the program to `figlet' to allow a small
phrase to be `graffitied' onto the blackboard.
The script takes great pains to ensure that a HTML program will parse
the output correctly. It does this by replacing the special characters
such as ``<'' with the html sequence ``<'' so that the
characters will be displayed properly.
This program is used to implement the blackboard in the Castle's
Classroom.