Well you’re reading this book, which is a great place to start! The other O’Reilly books about bash and shell scripting are: Learning the bash Shell by Cameron Newham (O’Reilly) and Classic Shell Scripting by Nelson H.F. Beebe and Arnold Robbins (O’Reilly).
Unfortunately, the official bash documentation has not been easily accessible online—until now! Previously, you had to download several different tarballs, locate all the files that contain documentation, and then decipher the file names to find what you wanted. Now, our companion web site (http://www.bashcookbook.com/) has done all this work for you and provides the official bash reference documentation online so it’s easy to refer to. Check it out, and refer others to it as needed.
The official bash FAQ is at: ftp://ftp.cwru.edu/pub/bash/FAQ. See especially “H2) What kind of bash documentation is there?” The official reference guide is also strongly recommended; see below for details.
Chet Ramey’s (the current bash maintainer) bash page (called bashtop) contains a ton of very useful information (http://tiswww.tis.case.edu/~chet/bash/bashtop.html). Chet also maintains the following (listed in bashtop):
A file describing bash: http://tiswww.tis.case.edu/chet/bash/README
A file tersely listing the notable changes between the current and previous versions: http://tiswww.tis.case.edu/chet/bash/NEWS
A complete bash change history: http://tiswww.tis.case.edu/chet/bash/CHANGES
Installation instructions: http://tiswww.tis.case.edu/chet/bash/INSTALL
Platform-specific configuration and operation notes: http://tiswww.tis.case.edu/chet/bash/NOTES
Compatibility issues between bash3 and bash1: http://tiswww.tis.case.edu/~chet/bash/COMPAT
The latest bash source code and documentation are always available at: http://ftp.gnu.org/gnu/bash/.
We highly recommend downloading both the source and the documentation even if you are using prepackaged binaries. Here is a brief list of the documentation. See Appendix B for an index of the included examples and source code. See the source tarball’s ./doc directory, for example: http://ftp.gnu.org/gnu/bash/bash-3.1.tar.gz/, bash-3.1/doc:
The .ps files are postscript versions of the above. The
.html files are HTML versions of the manpage and reference manual.
The .0 files are formatted manual pages. The .txt
versions are ASCII—the output of groff
-Tascii
.
In the document tarball, for example: http://ftp.gnu.org/gnu/bash/bash-doc-3.1.tar.gz,bash-doc-3.1:
The Advanced Bash-Scripting Guide at http://www.tldp.org/LDP/abs/html/index.html and http://www.tldp.org/LDP/abs/abs-guide.pdf
Writing Shell Scripts at http://www.linuxcommand.org/writing_shell_scripts.php
BASH Programming – Introduction HOW-TO at http://www.tldp.org/HOWTO/Bash-Prog-Intro-HOWTO.html
Bash Guide for Beginners at http://www.tldp.org/LDP/Bash-Beginners-Guide/html/ and http://www.tldp.org/LDP/Bash-Beginners-Guide/Bash-Beginners-Guide.pdf
The Bash Prompt HOWTO at http://www.tldp.org/HOWTO/Bash-Prompt-HOWTO/index.html
Very old, but still useful: UNIX shell differences and how to change your shell at http://www.faqs.org/faqs/unix-faq/shell/shell-differences/
[Apple’s] Shell Scripting Primer at http://developer.apple.com/documentation/OpenSource/Conceptual/ShellScripting/
3.143.239.234