Bibliography
Those who do not understand UNIX are condemned to reinvent it,poorly.
Henry Spencer
Edited by Peter Denning, Computers Under Attack: Intruders, Worms, and Viruses, ACM Press, 1990, 0-201-53067-8.
This compendium contains a couple of articles onshell script viruses.
*Ken Burtch, Linux Shell Scripting with Bash, 1st edition, Sams Publishing (Pearson), 2004, 0672326426.
Covers much of the same material as this guide. Dead treemedia does have its advantages, though.
*Dale Doughertyand Arnold Robbins, Sed and Awk, 2nd edition, O'Reilly and Associates, 1997, 1-156592-225-5.
To unfold the full power of shell scripting, you need at least a passingfamiliarity with sedandawk. This is the standard tutorial. Itincludes an excellent introduction to "regular expressions". Read thisbook.
*Jeffrey Friedl, Mastering Regular Expressions, O'Reilly and Associates, 2002, 0-596-00289-0.
The best, all-around reference on Regular Expressions.
*Aeleen Frisch, Essential System Administration, 3rd edition, O'Reilly and Associates, 2002, 0-596-00343-9.
This excellent sys admin manual has a decent introduction to shellscripting for sys administrators and does a nice job of explaining thestartup and initialization scripts. The long overdue third edition of thisclassic has finally been released.
*Stephen Kochanand Patrick Woods, Unix Shell Programming, Hayden, 1990, 067248448X.
The standard reference, though a bit dated by now.
*Neil Matthewand Richard Stones, Beginning Linux Programming, Wrox Press, 1996, 1874416680.
Good in-depth coverage of various programminglanguages available for Linux, including a fairly strong chapteron shell scripting.
*Herbert Mayer, Advanced C Programming on the IBM PC, Windcrest Books, 1989, 0830693637.
Excellent coverage of algorithms and generalprogramming practices.
*David Medinets, Unix Shell Programming Tools, McGraw-Hill, 1999, 0070397333.
Good info on shell scripting, with examples, and a shortintro to Tcl and Perl.
*
Cameron Newhamand Bill Rosenblatt, Learning the Bash Shell, 2nd edition, O'Reilly and Associates, 1998, 1-56592-347-2.
This is a valiant effort at a decent shell primer, but somewhat deficientin coverage on programming topics and lacking sufficient examples.
*Anatole Olczak, Bourne Shell Quick Reference Guide, ASP, Inc., 1991, 093573922X.
A very handy pocket reference, despite lackingcoverage of Bash-specific features.
*Jerry Peek,Tim O'Reilly,and Mike Loukides, Unix Power Tools, 2nd edition, O'Reilly and Associates, Random House, 1997, 1-56592-260-3.
Contains a couple of sections of very informativein-depth articles on shell programming, but falls short of beinga tutorial. It reproduces much of the regular expressions tutorialfrom the Dougherty and Robbins book, above.
*Clifford Pickover, Computers, Pattern, Chaos, and Beauty, St. Martin's Press, 1990, 0-312-04123-3.
A treasure trove of ideas and recipes forcomputer-based exploration of mathematical oddities.
*George Polya, How To Solve It, Princeton University Press, 1973, 0-691-02356-5.
The classic tutorial on problem solving methods(i.e., algorithms).
*Chet Rameyand Brian Fox, The GNU Bash Reference Manual, Network Theory Ltd, 2003, 0-9541617-7-7.
This manual is the definitive reference forGNU Bash. The authors of this manual, Chet Ramey and Brian Fox,are the original developers of GNU Bash. For each copy sold thepublisher donates $1 to the Free Software Foundation.
Arnold Robbins, Bash Reference Card, SSC, 1998, 1-58731-010-5.
Excellent Bash pocket reference (don't leave homewithout it). A bargain at $4.95, butalso available for free download on-linein pdfformat.
*Arnold Robbins, Effective Awk Programming, Free Software Foundation / O'Reilly and Associates, 2000, 1-882114-26-4.
The absolute best awktutorial andreference. The free electronic version of this book is part of theawkdocumentation, and printed copies of thelatest version are available from O'Reilly and Associates.
This book has served as an inspiration for the author of thisdocument.
*Bill Rosenblatt, Learning the Korn Shell, O'Reilly and Associates, 1993, 1-56592-054-6.
This well-written book contains some excellent pointers on shellscripting.
*Paul Sheer, LINUX: Rute User's Tutorial and Exposition, 1st edition, , 2002, 0-13-033351-4.
Very detailed and readable introduction to Linux systemadministration.
The book is available in print, oron-line.
*Ellen Sieverand the staff of O'Reilly and Associates, Linux in a Nutshell, 2nd edition, O'Reilly and Associates, 1999, 1-56592-585-8.
The all-around best Linux command reference, even has a Bash section.
*Dave Taylor, Wicked Cool Shell Scripts: 101 Scripts for Linux, Mac OS X, and Unix Systems, 1st edition, No Starch Press, 2004, 1-59327-012-7.
Just as the title says . . .
*The UNIX CD Bookshelf, 3rd edition, O'Reilly and Associates, 2003, 0-596-00392-7.
An array of seven UNIX books on CD ROM, includingUNIX Power Tools,Sed and Awk, and Learning the Korn Shell. A completeset of all the UNIX references and tutorials you would ever needat about $130. Buy this one, even if it means going into debtand not paying the rent.
*The O'Reilly books on Perl. (Actually, any O'Reilly books.)
---
Fioretti, Marco, "Scripting for XProductivity,"Linux Journal, Issue 113,September, 2003, pp. 86-9.
Ben Okopnik's well-written introductory Bashscriptingarticles in issues 53, 54, 55, 57, and59 of the Linux Gazette, and hisexplanation of "The Deep, Dark Secrets of Bash"in issue 56.
Chet Ramey's bash - The GNU Shell,a two-part series published in issues 3 and 4 of theLinux Journal, July-August1994.
Mike G's Bash-Programming-IntroHOWTO.
Richard's UnixScripting Universe.
Chet Ramey's Bash F.A.Q.
Ed Schaefer's ShellCornerin Unix Review.
Example shell scripts at Lucc's Shell Scripts.
Example shell scripts at SHELLdorado .
Example shell scripts at NoahFriedman's script site.
Example shell scripts at zazzybob.
Steve Parker's Shell ProgrammingStuff.
Example shell scripts at SourceForge Snippet Library - shell scrips.
"Mini-scripts"at UnixOneliners.
Giles Orr's Bash-PromptHOWTO.
Very nice sed,awk, and regular expression tutorials atThe UNIXGrymoire.
Eric Pement'ssed resources page.
Many interesting sed scripts at the seder's grab bag.
The GNU gawkreference manual(gawkis the extendedGNU version of awkavailable on Linux andBSD systems).
Tips and tricks at Linux Reviews.
Trent Fisher's grofftutorial.
Mark Komarinski's Printing-UsageHOWTO.
TheLinux USB subsystem(helpful in writing scripts affectingUSB peripherals).
There is some nice material on I/O redirectionin chapter 10 of the textutils documentationat the University ofAlberta site.
RickHohenseehas written the osimpai386 assembler entirely as Bash scripts.
Aurelio Marinho Jargas has written a Regular expressionwizard. He has also written an informative bookon Regular Expressions,in Portuguese.
BenTomkinshas created the Bash Navigatordirectory management tool.
William Parkhas been working on a projectto incorporate certain Awk and Pythonfeatures into Bash. Among these is agdbminterface. He has released bashdiffon Freshmeat.net. Hehas an articlein the November, 2004 issue of the Linux Gazetteon adding string functions to Bash, with a followuparticlein the December issue, and yet anotherin the January, 2005 issue.
Peter Knowles has written anelaborateBash scriptthat generates a book list on the SonyLibriee-book reader. This useful tool permitsloading non-DRM user content on the Librie.
Rocky Bernstein is in the process of developing a"full-fledged"debuggerforBash.
Of historical interest are Colin Needham's originalInternational Movie Database (IMDB) reader pollingscripts, which nicely illustrate the use of awkfor string parsing.
---
The excellent Bash Reference Manual, by Chet Ramey and Brian Fox,distributed as part of the "bash-2-doc" package (available as an rpm).See especially the instructive example scripts in this package.
The comp.os.unix.shellnewsgroup.
The comp.os.unix.shellFAQand itsmirror site.
Assorted comp.os.unix FAQs.
The manpages for bashandbash2, date,expect, expr,find, grep,gzip, ln,patch, tar,tr, bc,xargs. The texinfo documentationon bash, dd,m4, gawk, andsed.