Skip Navigation Links

Course Length:
4 Days
Course Description:
This course describes the standard Linux shell, bash. All facets of the bash shell are discussed: bash productivity features, bash as the user interface, bash user customization, and bash as a programming language. The programming features of bash are emphasized. Many hands-on labs are given to reinforce the lectures.
Who Should Attend:
The course is intended for LINUX programmers, end users, managers, and current or future system administrators.
Benefits of Attendance:
Upon completion of this course, students will be able to:
  • Write shell scripts to solve a wide variety of problems.
  • Customize your environment to suit your personal preferences.
  • Increase productivity by using many bash special features including: the history mechanism, command line editing, creating aliases, and writing functions.
  • Use bash arithmetic operators.
  • Use powerful programming constructs.
  • Use the debugging capabilities of bash.
  • Use bash job control features.
Prerequisites:
Students should have completed an introductory course in Linux or some version of UNIX (Solaris/AIX/HPUX/etc.) or have equivalent knowledge.
Course Outline:
  • Bash Fundamentals
    1. User Interfaces
    2. Shell History
    3. Shell Functions
    4. Startup Files
    5. Changing Directories
    6. Command Line Formats
    7. The File System
    8. Filename Expansion Characters
    9. Input and Output Characters
    10. Quoting
    11. Other Special Characters
    12. Getting Help
    13. Control Keys
  • Command Line Features
    1. Introduction
    2. Aliases
    3. The set Command
    4. Shell Variables
    5. Exporting Variables
    6. Hashing
    7. Functions
    8. Function Parameters
  • Command Line Editing
    1. Introduction
    2. bash History
    3. Editing With vi
    4. Editing With emacs
    5. Textual Completion
  • Fundamentals Of Shell Scripts
    1. Introduction
    2. Writing a Script
    3. Special Shell Variables
    4. Local Variables
    5. Variable Syntax
    6. Pattern Matching
    7. Command Substitution
  • Decision Making Constructs
    1. Introduction
    2. Exit Status
    3. The return Statement
    4. The if Statement
    5. Compound Tests
    6. Arithmetic Tests
    7. String Tests
    8. File Tests
    9. The test Command
    10. elif
    11. case
  • Iterative Constructs
    1. Looping Constructs
    2. The for Loop
    3. The while Loop
    4. The until Loop
  • Bash Arithmetic
    1. Introduction
    2. expr
    3. bash Arithmetic
    4. Typed Variables
    5. Arrays
  • Miscellaneous Features
    1. Introduction
    2. shift
    3. getopts
    4. read
    5. here documents
    6. select
    7. Processes
    8. Signals
    9. trap
    10. Command Line Processing
    11. printf