Unix Shell Programming, Third Edition
Now that we have languages such as Perl and Python, much of shell scripting has been forgotten. The need still arises for the times and places where running Perl would be just that little bit too much overhead; cron jobs, process start and stop scripts, even machine start and stop scripts. For these we could best go back to the old ways. Combining the power of the common Unix tools, pipes and scripts in a fairly obscure and slightly arcane syntax is not easy to pick up, though the language's simplicity does, in some ways, make it easier than more complex ones such as Perl. This book does a good job at introducing shell programming and I found it an excellent book when I needed a refresher.
I don't want to sell this volume short: you won't just learn about shell programming. The first ninety or so pages provide an excellent guide to getting the best out of the shell, and the last chapter is devoted to the features specific to an interactive shell such as command-line editing and using the history.
The authors have chosen to use the POSIX standard Bourne shell ('bash', available on many *nix systems, is a superset of the POSIX standard). That seems the right decision, given that it is so universally available and usually the default shell.
The book is well structured, starting out with a brief look at *nix operating systems before introducing the shell followed by some basic tools; cut, paste, sed, tr, grep, sort and uniq. One minor quibble, the book explains how to redirect STDOUT to a file and STDERR to a file, but not how to redirect both to the same file. That aside, these few chapters provide a good introduction to the shell.
The text goes on to systematically explore shell programming starting with variables and arithmetic. The chapters are kept short, in a good order and have a number of exercises at the end of each. The structure of the book and the order each new concept is introduced is well thought out; at each stage small examples are given that only use material already introduced and are complete in performing a task. In early chapters they are fairly trivial but by the end there is a fairly complete rolodex program written in shell script that would be a good model for anything you wished to do.
There is also a good summary of the shell syntax and common commands in Appendix A and good 'Further Information' in Appendix B. Kudos must go to the authors for a list of books for further reading that is not ashamed of mentioning other publishers, indeed they say "One of the best sources of books on Unix-related topics is O'Reilly and Associates" and list volumes from them before mentioning their own publishers.
There are some small typographic errors in the text but I did not find any in the script examples I tried. I found it to be well written and readable throughout, perhaps an advantage of a third edition in a slow moving technology.
You can visit the Sams web page devoted to the book which has the Table of Contents and the third chapter available for download. It has no errata or source code, I looked to see if the authors maintained a site for the book but could not find one.
I would recommend everyone read this book once or twice, it provides a comprehensive, well written tutorial on one of the most basic (and often overlooked) tools at your disposal. Even Windows users could install Cygwin and gain the benefit of a good POSIX compliant shell and this book. It also has the advantage that once purchased it will be useful for many, many years to come - the language has not changed noticeably in twenty five years and should not change in another twenty five.
You can purchase Unix Shell Programming, Third Edition from bn.com. Slashdot welcomes readers' book reviews -- to submit a review for consideration, read the book review guidelines, then visit the submission page.
no need to wrap it, just put it on the kharm(a).
.asp again on that won. fortunately we have robbIE's 'stuff that matters' slowgun, & his gnu dating service to keep US abreast of reality/prevent softwar gangster hypenosys mindphuking?
.controll ?pr? ?firm? crap? (mynuts won, need a date buddIE?)
.asp on that won?
making the case that the won-eyed girl is a phonIE (mynuts won, beating a lame won to debt?)
by Anonymous Coward on Wednesday December 31, @06:48AM (#7844071)
will corepirate nazi felon ?pr? ?firm? scriptdead execrable (mynuts won, it's ok if you do it for monIE?)
by Anonymous Coward on Wednesday December 31, @06:44AM (#7844061)
skew/FUDge survey results/EVERYTHING?
you can bet your
&, failing that, we have the:
pateNTdead eyecon0meter used to
by Anonymous Coward on Tuesday December 30, @02:38PM (#7837849)
that's right. this stuff is unbreakable, & wwworks on several (more than 3) dimensions.
morons build vessel that floats on any suBStance? (mynuts won, no need to be suspicious?)
by Anonymous Coward on Monday December 29, @02:53PM (#7829639)
you can bet your
creators/humankind converge to repel unprecedented evile? (mynuts won, who run our 'banks'?)
by Anonymous Coward on Monday December 29, @02:51PM (#7829610)
& why not? what other options are there for us?
eyecon0meter: survival most sought after feature? (mynuts won, get yOUR freedumb here?)
by Anonymous Coward on Monday December 29, @02:48PM (#7829586)
creators' badtoll over corepirate nazi execrable (mynuts won, many think hangin's way too good for the skalywags?)
by Anonymous Coward on Monday December 29, @02:46PM (#7829567)
disposal?
newclear power dissed/cussed? (mynuts won, no animals killed buy MiStake in newclear power generation)
by Anonymous Coward on Monday December 29, @02:41PM (#7829536)
&, it's free as in free.
newclear powered blips explore corepirate nazi (mynuts won, no lowrating robbIE's sponsors?)
by Anonymous Coward on Monday December 29, @07:53AM (#7826913)
cesspool?
pheWWW.
lookout bullow. the daze of the phonIE payper liesense ?pr? ?firm? hypenosys stock markup FraUD softwar gangster execrable, is WANing into coolapps/the abyss, at the increasing speed of right.
consult with/trust in yOUR creators.... get ready to brighten up?
mynuts won: solar(is) power included?
Watch out GNU/perl and GNU/linux!
wow, I went to CowboyNeal's home page and what do I see?
Blatant use of the N-word!
As an african-american, I find this racial intolerance to be intolerable and will not support a site that employs racists in its ranks.
You should be ashamed of yourselevs.
Am I the only one snickering at these names?
"Kochan Wood, Kochan Wood..."
online dating? fauxking phonIE payper liesense gadgetry?
the upcoming va lairIE/robbIE answer yOUR questions about stock markup FraUD/# juggling interview should clear things up a bit?
when too much corepirate nazi puppet sucksass is never enough?
you used the N-word again!
I'm effin mad now. I'm not ever coming back to this racist website
What is a Eunuch's shell?
...sirs. What the fuck does "honstepuck" (pronounced hon-ste-puk) mean? It sounds like some kind of German slang for some nasty sexual act. I don't understand where some of these Slashdot droids get their names from. It makes no sense at all. I would understand a name like "Neo" or "AgentSmith" or "Tenchi" or "PukeSkywalker" or "Trolling4Dollars" or "Deckard" or "TomServo" or "LilKim" or "TonyaHarding" or "BitchInHeat" or "SexyGal$$$" or "SUBJECT LINE TROLL" or "EliseSutton" or "Diva" or "Gomiller61" or even "Bob". But "honstepuck"? Why?
Please don't mod this down. It's a serious question and I've asked it a few times before. For some incomprehensible reason, people seem to feel the need to mod this questions down. But fight the urge and mod it up so that I may finally rest with a decent answer that someone in the know may provide.
Thank You Sirs,
EelsFuckingInaBucketOfSnot
To my Jihad brothers... PROPS!