Tom's Script Archive
Welcome to my script archive. Here are a few little programs
that I thought might come in handy for others wanting to learn
Perl.  You may go look at the alphabetical
listing or grouped by category.
Make sure you poke around inside the listed directories.
Tom Christiansen
- admin
- 
	ckaddr
	dfgripe
	hwo
	keepalive
	man.shar.gz
	manpath
	mvids
	ndf
	pgrep
	psgrep
	pt
	pt.shar.gz
	rename
	rep
	rmmq
	seced
	slipup
	sox
	ssl
	statmon
	straycats
	suidscript
	tgent
	whenon
	whenon.dir/
	zap
- benchmark
- 
	chkfork
- cgi
- 
	MxScreen
	bados
	mort-cgi
	pizza.shoppe
- csh
- 
	csh/
	gent.csh
- demo
- 
	prime-fork
	prime-thread
- devel
- 
	igrep
	pmdesc
	ptags
	timeouts/
	toms.exrc
	trail
	vi-db.shar
	whperl
- doc
- 
	doc/
	html-hacking.html
	latro.html
	ranquiz
- files
- 
	cptimes
	dutree-new
	dutree-old
	flinx
	lst
- filter
- 
	b64
	boxit
	chop
	now
	permute
	randcap
	randline
	slowcat
	sortbylast
	sortbylen
	sortsig
	superquote
	tcgrep
	tct
	tee/
	tfiles
	words
- inet
- 
	catsock
	daytime
	expn
	fwdport
	net/
	rweb
	weather
- mail
- 
	cfoq
	getalias
	msort/
	plum
	sigrand
- misc
- 
	mort
- mtg
- 
	MxScreen
	angelgrep
	mxperl
- news
- 
	cfoq
	clip
	cliprc
- talk
- 
	ADVLABS/
	CS-Talk/
	perlstyle-talk
- text
- 
	dupwords
	lexmorph
	pull_quotes
- tk
- 
	netcomplain.perltk
- unknown
- 
	cgi/
	html-tools/
	vrfy
- www
- 
	amarank
	churl
	ggh
	htdecom
	htitle
	html-hacking.html
	latro
	latro.html
	mkscrindex
	qxurl
	reltree
	striphtml
	surl
	webmirror
	xurl
- ADVLABS/: Exercise solutions from an advanced perl course I taught long ago.
- CS-Talk/: Presentation notes and copious source examples for a compsci talk at CU-Boulder. Many data structure and module examples.
- MxScreen: Front end for the MoxPerl Query Database
- amarank: Use LWP to rank Amazon.COM books
- angelgrep: Back end for the MTG rules grepper
- b64: Base64 to ASCII decode
- bados: Redirect to jargon file based on browser
- boxit: surround ever paragraph of input with a gaudy quote box
- catsock: old code to drain a socket
- cfoq: heuristically determine whether a message has too many quotes lines
- cgi/: [unknown]
- chkfork: check your system's fork performance
- chop: discard parts of line that would make things wrap
- churl: check another URL's links for validity
- ckaddr: backend for ftp to check mail address validity
- clip: lwall+tchrist program for kibo-izing the news spool
- cliprc: config file for the clip program
- cptimes: copy timestamp from one file to others
- csh/: csh-related matter
- daytime: old socket code to fetch data from some machine's daytime port
- dfgripe: check for "full" disks, mailing top users about the problem
- doc/: old troff documentation about some of these scripts
- dupwords: identify duplicate adjacent words in input text paragraphs
- dutree-new: render du output indented by parent (updated and clear)
- dutree-old: render du output indented by parent (old and magical)
- expn: convince smtp to divulge an alias expansion
- flinx: find all the symbolic links and show where they point
- fwdport: generic forwarding proxy daemon
- gent.csh: old sed script to fetch and format a termcap entry
- getalias: expand sendmail aliases, recursively
- ggh: grep in netscape's history database
- htdecom: ugly regex-based html comment stripper
- htitle: use LWP to fetch a document's title
- html-hacking.html: description of www tools
- html-tools/: [unknown]
- hwo: old who rewrite that finds utmp-inhibited xterms
- igrep: grep recursively in #includes
- keepalive: keep slip connection running
- latro: test a site for the evil perl.exe bug
- latro.html: describe latro
- lexmorph: change one word to another, letter by letter
- lst: depth-first recursive directory lister
- man.shar.gz: my ancient man programs in perl
- manpath: compute manpatch dynamically
- mkscrindex: build this script index dynamically
- mort: mortage payment calculator
- mort-cgi: front end for mortgate calculator
- msort/: three filters for sorting mail files
- mvids: remap user and group owners for updating passwd files
- mxperl: backend server for MoxPerl query database
- ndf: df rewrite
- net/: directory of old internet scripts
- netcomplain.perltk: ancient demo of perltk
- now: run cal thrice to show last month, this month, next month
- perlstyle-talk: script and materials for perlstyle presentation
- permute: show all permutations on each input line's words
- pgrep: grep for an executable by name in your path
- pizza.shoppe: old multistage pizza order form
- plum: perl-extensible graphical front-end for MH
- pmdesc: list all installed perl modules
- prime-fork: compute primes using processes
- prime-thread: compute primes using threads
- psgrep: apply perl expressions as query on ps output
- pt: render ps output indented by parent
- pt.shar.gz: package to build pt for various systems
- ptags: build perl tags file for vi
- pull_quotes: old code to pull out nested constructs in text
- qxurl: fast regex-based approach to finding links
- randcap: randomly capitalize input
- randline: select a random line from input, slowly
- ranquiz: perl wizards quiz
- reltree: render absolute urls in links relative
- rename: rename a bunch of files based on a rule
- rep: repeated run a program, using curses to show updates
- rmmq: remove an entry from the sendmail queue
- rweb: front end for webster server
- seced: edit a file safely while chrooted
- sigrand: choose a random signature line
- slipup: larry's old slip program
- slowcat: show a file s l o w l y
- sortbylast: sort input based on last field
- sortbylen: sort input based on length of line
- sortsig: sort signatures
- sox: merge lsof and netstat outputs
- ssl: summarize syslog activity
- statmon: check hosts for uptime and clock drift
- straycats: find orphaned catpages
- striphtml: remove html markup 
- suidscript: make setuid wrapper for script
- superquote: run boxit on mail message for quoting
- surl: sort link list by most recently modified
- tcgrep: grep rewrite and extension
- tct: tee rewrite and extension
- tee/: two versions of tee rewrite
- tfiles: identify plain textfiles
- tgent: fetch and format a termcap entry
- timeouts/: several timeout examples
- toms.exrc: my vi config file
- trail: tail -f rewrite and enhancement
- vi-db.shar: old system for using vi and perl db
- vrfy: [unknown]
- weather: fetch weather info from server (not mine)
- webmirror: yet another web mirroring script (not mine)
- whenon: check lastlog for when a user was here
- whenon.dir/: directory with several whenon versions
- whperl: find out path to a module you're using
- words: columnate input
- xurl: extract links from document
- zap: kill processes based on various criteria