Advanced Bash-Scripting Guide
order
Part 1. {Introduction}
1. {Why do I need shell programming?}
2. {#! To get started}
2.1. {Executing a script}
2.2. {Preliminary Exercises}
Part 2. {Basic steps}
3. {Exit and Exit Status}
4. {Special characters}
5. {variable and parameter introduction}
5.1. {Variable Substitution}
5.2. {Variable Assignment}
5.3. {Bash variable is untyped}
5.4. {Special variable type}
6. {Quoting}
7. {Test}
7.1. {Test Constructs}
7.2. {File test operator}
7.3. {Comparison operator (binary)}
7.4. {Nested if / then condition test}
7.5. {Test how you understand the test statement}
8. {Operations and Related Topics}
8.1. {Operators}
8.2. {Numerical Constants}
Part 3. {Beyond the Basics}
9. {Variables Revisited}
9.1. {Internal Variables}
9.2. {String manipulation}
9.3. {Parameter Substitution}
9.4. {Specify variable type: declare or typeset}
9.5. {Variable indirect reference}
9.6. {$ RANDOM: Create a random integer}
9.7. {The Double Parentheses Construct}
10. {Loops and Branches}
10.1. {Loop}
10.2. {Nested loops}
10.3. {Loop control}
10.4. {Testing and Branching}
11. {Internal Commands and Builtins}
11.1. {Job control command}
12. {External filter, program, command}
12.1. {Basic command}
12.2. {Complex Instructions}
12.3. {Time / date command}
12.4. {Text processing instruction}
12.5. {File, archive command}
12.6. {Communication command}
12.7. {Terminal control command}
12.8. {Math instruction}
12.9. {Other command}
13. {System and Administrator Commands}
14. {Command Substitution}
15. {Arithmetic Expansion}
16. {I / O Redirection}
16.1. {write exec}
16.2. {Code block redirection}
16.3. {Applications}
17. {Here Documents}
18. {Go to the top}
Part 4. {Advanced Topics}
19. {Regular Expressions}
19.1. {Brief introduction of regular expressions}
19.2. {Globbing}
20. {Subshells}
21. {Restricted Shells}
22. {Process Substitution}
23. {function}
23.1. {Complex Functions and Function Complexities}
23.2. {Local Variables and Recursion}
24. {Aliases}
25. {List Constructs}
26. {array}
27. {files}
28. {/ dev and / proc}
28.1. {/ dev}
28.2. {/ proc}
29. Of Zeros and Nulls
30. {Debug}
31. {OPTION}
32. {Some dirty things (Gotchas)}
33. {Script with style}
33.1. {Unofficial shell scripting style sheet}
34. {Nutty things}
34.1. {Interactive and non-interactive mode shells and scripts}
34.2. {Shell Wrappers}
34.3. {Compare to test: another way}
34.4. {optimization}
34.5. {Assorted Tips}
34.6. {Oddities}
34.7. {Portability Issues}
34.8. {Shell scripting on Windows}
35. {Bash, version 2}
36. {Endnotes}
36.1. {Author's Note}
36.2. {About the author}
36.3. {The tools I used to make this book}
36.3.1. {hardware}
36.3.2. {Software and printware}
36.4. {CREDIT}
order
Part 1. {Introduction}
1. {Why do I need shell programming?}
2. {#! To get started}
2.1. {Executing a script}
2.2. {Preliminary Exercises}
Part 2. {Basic steps}
3. {Exit and Exit Status}
4. {Special characters}
5. {variable and parameter introduction}
5.1. {Variable Substitution}
5.2. {Variable Assignment}
5.3. {Bash variable is untyped}
5.4. {Special variable type}
6. {Quoting}
7. {Test}
7.1. {Test Constructs}
7.2. {File test operator}
7.3. {Comparison operator (binary)}
7.4. {Nested if / then condition test}
7.5. {Test how you understand the test statement}
8. {Operations and Related Topics}
8.1. {Operators}
8.2. {Numerical Constants}
Part 3. {Beyond the Basics}
9. {Variables Revisited}
9.1. {Internal Variables}
9.2. {String manipulation}
9.3. {Parameter Substitution}
9.4. {Specify variable type: declare or typeset}
9.5. {Variable indirect reference}
9.6. {$ RANDOM: Create a random integer}
9.7. {The Double Parentheses Construct}
10. {Loops and Branches}
10.1. {Loop}
10.2. {Nested loops}
10.3. {Loop control}
10.4. {Testing and Branching}
11. {Internal Commands and Builtins}
11.1. {Job control command}
12. {External filter, program, command}
12.1. {Basic command}
12.2. {Complex Instructions}
12.3. {Time / date command}
12.4. {Text processing instruction}
12.5. {File, archive command}
12.6. {Communication command}
12.7. {Terminal control command}
12.8. {Math instruction}
12.9. {Other command}
13. {System and Administrator Commands}
14. {Command Substitution}
15. {Arithmetic Expansion}
16. {I / O Redirection}
16.1. {write exec}
16.2. {Code block redirection}
16.3. {Applications}
17. {Here Documents}
18. {Go to the top}
Part 4. {Advanced Topics}
19. {Regular Expressions}
19.1. {Brief introduction of regular expressions}
19.2. {Globbing}
20. {Subshells}
21. {Restricted Shells}
22. {Process Substitution}
23. {function}
23.1. {Complex Functions and Function Complexities}
23.2. {Local Variables and Recursion}
24. {Aliases}
25. {List Constructs}
26. {array}
27. {files}
28. {/ dev and / proc}
28.1. {/ dev}
28.2. {/ proc}
29. Of Zeros and Nulls
30. {Debug}
31. {OPTION}
32. {Some dirty things (Gotchas)}
33. {Script with style}
33.1. {Unofficial shell scripting style sheet}
34. {Nutty things}
34.1. {Interactive and non-interactive mode shells and scripts}
34.2. {Shell Wrappers}
34.3. {Compare to test: another way}
34.4. {optimization}
34.5. {Assorted Tips}
34.6. {Oddities}
34.7. {Portability Issues}
34.8. {Shell scripting on Windows}
35. {Bash, version 2}
36. {Endnotes}
36.1. {Author's Note}
36.2. {About the author}
36.3. {The tools I used to make this book}
36.3.1. {hardware}
36.3.2. {Software and printware}
36.4. {CREDIT}
Show More