Unix Shell Programming is a tutorial aimed at helping Unix and Linux users get optimal performance out of their operating out of their operating system. It shows them how to take control of their systems and work efficiently by harnessing the power of the shell to solve common problems. The reader learns everything he or she needs to know to customize the way a Unix system responds.
The vast majority of Unix users utilize the Korn shell or some variant of the Bourne shell, such as bash. Three are covered in the third edition of Unix Shell Programming. It begins with a generalized tutorial of Unix and tools and then moves into detailed coverage of shell programming.
Topics covered include: regular expressions, the kernel and the utilities, command files, parameters, manipulating text filters, understanding and debugging shell scripts, creating and utilizing variables, tools, processes, and customizing the shell.
About the Author
Stephen G. Kochan is the owner of TechFitness, a technology-based fitness company. Prior to that, he was the President and CEO of Pipeline Associates, a company specializing in color printing software. Mr. Kochan is the author of several best-selling books on Unix and C programming, including the best-selling Programming in C. He also acted as Series Editor for the Hayden Unix System Library.
Patrick Wood is the CTO of the New Jersey location of Electronics for Imaging. He was a member of the technical staff at Bell Laboratories when he met Mr. Kochan back in 1985. Together they founded Pipeline Associates, Inc., a Unix consulting firm, where he was the Vice President. The co-authored Exploring the Unix System, Unix System Security, Topics in C Programming, and Unix Shell Programming.
Table of Contents
2. A Quick Review of the Basics.
Some Basic Commands. Working with Files. Working with Directories. Filename Substitution. Standard Input/Output and I/O Redirection. Pipes. Standard Error. More on Commands. Command Summary. Exercises.
3. What Is the Shell?
The Kernel and the Utilities. The Login Shell. Typing Commands to the Shell. The Shells Responsibilities.
4. Tools of the Trade.
Regular Expressions. cut. paste. sed. tr. grep. sort. uniq. Exercises.
5. And Away We Go.
Command Files. Variables. Built-in Integer Arithmetic. Exercises.
6. Can I Quote You on That?
The Single Quote. The Double Quote. The Backslash. Command Substitution. Exercises.
7. Passing Arguments.
The shift Command. Exercises.
8. Decisions, Decisions.
Exit Status. The test Command. The else Construct. The exit Command. The elif Construct. The case Command. The Null Command :. The && and Constructs. Exercises.
9. Round and Round She Goes.
The for Command. The until Command. More on Loops. The getopts Command. Exercises.
10. Reading and Printing Data.
The read Command. The printf Command. Exercises.
11. Your Environment.
Local Variables. Exported Variables. PS1 and PS2. HOME, James. Your PATH. Your Current Directory. More on Subshells. Your .profile File. The TERM Variable. The TZ Variable. Exercises.
12. More on Parameters.
Parameter Substitution. The $0 Variable. The set Command. The IFS Variable. The readonly Command. The unset Command. Exercises.
13. Loose Ends.
The eval Command. The wait Command. The trap Command. More on I/O. Functions. The type Command. Exercises.
14. Rolo Revisited.
Design Considerations. rolo. add. Lu display. rem. change. listall. Sample Output. Exercises.
15. Interactive and Nonstandard Shell Features.
Getting the Right Shell. The ENV File. Command-Line Editing. Command History. The vi Line Edit Mode. The Line Edit Mode. Other Ways to Access Your History. Functions. Integer Arithmetic. The alias Command. Arrays. Job Control. The Restricted Shell rsh. Miscellaneous Features. Compatibility Summary. Exercises.
Appendix A. Shell Summary.
Startup. Commands. Comments. Parameters and Variables. Command Re-entry. Quoting. Filename Substitution. I/O Redirection. Exported Variables and Subshell Execution. Functions. Job Control. Command Summary.
Appendix B. For More Information.
Online Documentation. Documentation on the Web. Books.