Chapter 3. Tutorial / Reference

Table of Contents
3.1. exit and exit status
3.2. Special characters used in shell scripts
3.3. Introduction to Variables and Parameters
3.4. Quoting
3.5. Tests
3.5.1. File test operators
3.5.2. Comparison operators (binary)
3.6. Operations and Related Topics
3.6.1. Operations
3.6.2. Numerical Constants
3.7. Variables Revisited
3.7.1. Typing variables: declare or typeset
3.7.2. Indirect References to Variables
3.7.3. $RANDOM: generate random integer
3.8. Loops
3.9. Internal Commands and Builtins
3.10. External Filters, Programs and Commands
3.11. System and Administrative Commands
3.12. Backticks (`...`)
3.13. I/O Redirection
3.14. Recess Time
3.15. Regular Expressions
3.15.1. A Brief Introduction to Regular Expressions
3.15.2. Using REs in scripts
3.16. Subshells
3.17. Process Substitution
3.18. Functions
3.19. List Constructs
3.20. Arrays
3.21. Files
3.22. Here Documents
3.23. Of Zeros and Nulls
3.24. Debugging
3.25. Options
3.26. Gotchas
3.27. Miscellany
3.27.1. Interactive and non-interactive scripts
3.27.2. Optimizations
3.27.3. Assorted Tips
3.28. Bash, version 2
 

...there are dark corners in the Bourne shell, and people use all of them.

 
--Chet Ramey