Useful Books and Guides

All of the books and guides listed in this section can be thoroughly recommended for what they are. I have noted, however, some areas of deficiency and in these cases I have compiled my own guides which you can also find in this site.

UNIX

O'Reilly's UNIX in a Nutshell takes some beating as a reference. All the books in the Nutshell series are excellent works which take you through from the philosophy behind the language right down to the nuts and bolts level. Nothing is sacred and nothing is spared, all the faults and all the bugs get a mention in dispatches somewhere. Towards the rear of the book an aphabetical list of commands by name and function can be found. Even so, there is no substitute for a good training course when trying to cover something of this depth. Could you guess that rpcinfo is used to list out the Remote Procedure Call Registery? Or that mv is the command to Move a File or Directory?

Another good book by the same publisher is UNIX Power Tools. This is another reference but this time it is a collection of articles collected by many users from many sources and aranged by subject. The index and contents are both first rate and put the Windows Help facility to shame with the amount of cross linking and embedded references used in this printed form. You also get a free CD which includes all the code printed in the book and some other useful utilities.

Shell

I must admit here to not noticing many books out there that caught my eye. I leaned to program the shell scripts by taking apart existing scripts and reading the manuals, such as they were. I started with the C-shell (Sorry, I didn't know any better!), then progressed to the Bourne shell and lastly the Korn shell. The best advice I can give is learn to read the On-Line documentation always with a wry sense of humour. The information you are looking for will always be there somewhere, it's just never where you would expect it to be. For myself, I keep hardcopies of the three main shell 'man' pages, tag the edges to speed searching, and write a lot in the margins to clarify the cryptic nature of some passages and include lots of examples.


In the end I got so frustrated that I wrote my own guide which you can find Here as an 84 page Word 6 document downloadable as a single ZIP file. In the book I have used the man pages as a thread and expanded each section into a full chapter with real world examples - something sadly lacking in many man pages generally. Each subject is filled with copious examples of code and all the code used can be downloaded in zip format from this site. You might also like to visit the new section of this site where I have converted the entire manual into html pages. There is no restriction on the use of any of this code, but I take no responsibility for it either. Use it at your peril until you have thoroughly tested it in your own environment. Good luck with your scripting and I hope you have lots of fun. R2


Anyway, that was then, this is now. I recently did a scan of books on the Amazon web site and this list came up fairly quickly. I have not yet had a chance to review any of the following books but I have some on order and will get around to posting reviews when I have some spare time soon.
Portable Shell Programming (1995) 7/10

Bourne Shell Quick Ref Guide (1998) 9/10

This is a very slim volume (44 pages) but is useful if you already know UNIX and the Bourne Shell and just need to look something up quick. There is a bunch of examples at the rear of the book which detail some ways of using the shell to get particular results. Each command that will be useful in a shell script (echo, cut, if, etc.) are detailed in their own right and options are listed. You might not be able to learn to program in the Bourne Shell from this book but it is still a good enough reference to keep near the keyboard. (6/10)

Korn Shell Quick Ref Guide (1998) 5/10

Further Reading

For more reading matter, visit my student help pages where books useful for the computing degree course I am currently sudying are listed.
Page 301
This page was brought to you by richard@r2.org.uk