Linux Shell Scripting Training

Course duration

Course Benefits

  • Learn how to avoid errors and save time and money by replacing repetitive work patterns with shell scripts.

Course Outline

  1. Introduction to the Shell
    1. Shell Script Strengths and Weaknesses
    2. Shells
    3. Switching User Contexts
    4. Example Shell Script
    5. Shell and Environment Variables
    6. Key Environment Variables
    7. Which and Type
    8. General Quoting Rules
    9. Nesting Commands
    10. Help from Commands and Documentation
    11. whereis
    12. Getting Help Within the Graphical Desktop
    13. Getting Help with man & info
    14. Lab Tasks
      1. Shell Variables
      2. Shell Meta-Characters
      3. Command Substitution
  2. Shell Scripting Basics
    1. Positional Parameters
    2. Input & Output
    3. printf
    4. alias
    5. Functions
    6. Colors in Scripts
    7. Custom Bash Prompts
    8. Lab Tasks
      1. Aliases
      2. Bash Login Scripts
      3. Create "userinfo" and "sysinfo" functions
  3. Working with Files
    1. Communication Channels
    2. File Redirection
    3. Piping Commands Together
    4. Doing Math
    5. Filesystem Structures
    6. Determining Disk Usage With df and du
    7. cron
    8. The crontab Command
    9. crontab Format
    10. /etc/cron.*/ Directories
    11. Sending Email with mailx
    12. Lab Tasks
      1. Disk and Filesystem Usage
      2. Redirection and Pipes
  4. Regular Expressions
    1. Searching Inside Files
    2. Regular Expression Overview
    3. Regular Expressions
    4. RE Character Classes
    5. Regex Quantifiers
    6. RE Parenthesis
    7. The Streaming Editor
    8. Lab Tasks
      1. Pattern Matching with Regular Expressions
      2. Extended Regular Expressions
      3. Using Regular Expressions With sed
  5. Branching and Looping
    1. Exit Status
    2. Comparisons with test
    3. Conditional Statements
    4. Flow Control: case
    5. Flow Control: while and until Loops
    6. The borne for-Loop
    7. Flow Control: select
    8. Lab Tasks
      1. Reporting User Statistics
      2. Monitoring Filesystem Usage
  6. Data Munging
    1. Text Processing with Awk
    2. Text Sorting
    3. Duplicate Removal Utility
    4. Extracting Columns of Text
    5. Lab Tasks
      1. Create "rmhost" function
      2. Create "showenv" function
      3. Parsing Mail Server Logs
      4. Fixing Incorrect Files
  7. Security, Whitespace, and Other Gotchas
    1. Gotcha: Quoting Variables
    2. Gotcha: Locales
    3. Gotchas: Maximum Command Length
    4. Gotcha: Whitespace in for Loops
    5. Reading Files with while
    6. Gotcha: $IFS
    7. Gotcha: Printing in .bashrc
    8. Gotcha: Aliases
    9. Lab Tasks
      1. Renaming MP3 Files
      2. Split and Display $PATH
      3. A tar-based Backup
  8. Challenge
    1. Apache Configuration Files
    2. httpd.conf – VirtualHost Configuration
    3. Lab Tasks
      1. Automated Virtual Host Provisioning
  9. Emacs
    1. Emacs
    2. The Emacs Interface
    3. Basic Emacs
    4. More Emacs Commands
    5. Lab Tasks
      1. Text Editing with Emacs
  10. The Secure Shell (SSH)
    1. OpenSSH Client & Server Configuration
    2. Accessing Remote Shells
    3. Transferring Files
    4. SSH Key Management

Class Materials

Each student will receive a comprehensive set of materials, including course notes and all the class examples.

Class Prerequisites

Experience in the following is required for this Linux class:

  • Solid understanding of Unix-based systems and proficiency on the Unix or Linux command line.
Since its founding in 1995, InterSource has been providing high quality and highly customized training solutions to clients worldwide. With over 500 course titles constantly updated and numerous course customization and creation possibilities, we have the capability to meet your I.T. training needs.
Instructor-led courses are offered via a live Web connection, at client sites throughout Europe, and at our Geneva Training Center.