|< Day Day Up >|
If you want to investigate specific topics rather than read the entire book through, here is a chapter-by-chapter summary:
Chapter 1 introduces bash and tells you how to install it as your login shell. Then it surveys the basics of interactive shell use, including overviews of the UNIX file and directory scheme, standard I/O, and background jobs.
Chapter 2 discusses the shell's command history mechanism (including the emacs- and vi-editing modes), history substitution and the fc history command, and key bindings with readline and bind.
Chapter 3 covers ways to customize your shell environment without programming by using the startup and environment files. Aliases, options, and shell variables are the customization techniques discussed.
Chapter 4 is an introduction to shell programming. It explains the basics of shell scripts and functions, and discusses several important "nuts-and-bolts" programming features: string manipulation operators, brace expansion, command-line arguments (positional parameters), and command substitution.
Chapter 5 continues the discussion of shell programming by describing command exit status, conditional expressions, and the shell's flow-control structures: if, for, case, select, while, and until.
Chapter 6 goes into depth about positional parameters and command-line option processing, then discusses special types and properties of variables, integer arithmetic, and arrays.
Chapter 7 gives a detailed description of bash I/O. This chapter covers all of the shell's I/O redirectors, as well as the line-at-a-time I/O commands read and echo. It also discusses the shell's command-line processing mechanism and the eval command.
Chapter 8 covers process-related issues in detail. It starts with a discussion of job control, then gets into various low-level information about processes, including process IDs, signals, and traps. The chapter then moves to a higher level of abstraction to discuss coroutines and subshells.
Chapter 9 discusses various debugging techniques, like trace and verbose modes, and the "fake" signal traps. It then presents in detail a useful shell tool, written using the shell itself: a bash debugger.
Chapter 10 gives information for system administrators, including techniques for implementing system-wide shell customization and features related to system security.
Chapter 11 discusses ways to make bash scripts more maintainable.
Chapter 12 shows you how to go about getting bash and how to install it on your system. It also outlines what to do in the event of problems along the way.
Appendix A compares bash to several similar shells, including the standard Bourne shell, the POSIX shell standard, the Korn shell (ksh), the public-domain Korn shell (pdksh), and the Z Shell (zsh).
Appendix B contains lists of shell invocation options, built-in commands, built-in variables, conditional test operators, options, I/O redirection, and emacs- and vi-editing mode commands.
Appendix C gives information on writing and compiling your own loadable built-ins.
Appendix D looks at the basics of programmable completion.
|< Day Day Up >|