Get in Touch

Course Outline

Introduction

  • Learning Objectives
  • Course Itinerary
  • Course Overview
  • Entry Requirements
  • Recommended Reading
  • Participant Roles
  • Course Recap

Foundations Review (Optional)

  • Files
  • Directories and Processes
  • List Directory Contents - ls
  • Accessing Manual Pages - man
  • Viewing File Contents - cat, more
  • Basic Commands
  • Piping Data - using the | symbol
  • Output Redirection - using the > symbol
  • Appending Output - using the >> symbol
  • Input Redirection - using the < symbol
  • Error Redirection
  • Utilizing /dev/null
  • Foreground Tasks
  • Background Tasks - &
  • Terminating Tasks - kill
  • Special Directory Entries - . and ..
  • Customizing the Command Prompt - PS1
  • Creating Shortcuts
  • Utilizing Shortcuts
  • Command History
  • Line Editing - using Arrow Keys
  • Line Editing - using vi
  • Personalizing the Shell
  • User Home Directory - HOME
  • Current Working Directory - pwd
  • Navigating Directories - cd
  • Create New Directory - mkdir
  • Delete Directory - rmdir
  • Safe Copy - cp -i
  • Safe Move - mv -i
  • Safe Deletion - rm -i
  • Recursive Deletion - rm -r
  • Wildcards - Filename Pattern Matching
  • Counting Words - wc
  • Locating Files - find
  • Searching Text - grep, sort, cut, uniq, tr
  • Modifying Access Rights - chmod

Shell Scripting Basics

  • Writing Shell Scripts
  • Validating Commands
  • Generating the Script File
  • Granting Execution Rights
  • Testing the Script
  • Executing the Script - time
  • Executing the Script - dot
  • Executing the Script - exec
  • Executing the Script - ksh
  • Script Debugging
  • Passing Arguments
  • The read Command
  • Utilizing read in Scripts
  • Selecting the Shell Interpreter
  • Formatting Output
  • Suppressing Input Echo - stty

Special Characters and Variables

  • Quotation Marks
  • Enclosed Strings - " and '
  • Escape Sequences - *
  • Backquoted Strings - `
  • Using $(...)
  • System Environment Variables - set
  • Other Special Variables
  • Custom User Variables
  • Removing Variables - unset
  • Variables within Scripts
  • The typeset Command
  • Integer Handling
  • Advanced Syntax Constructs

Building Interactive Menus

  • Conditional Logic - case
  • Constructing a Menu Interface
  • Loops - while, until
  • Pausing Output - sleep
  • Pausing Output - dummy read
  • Terminating the Script
  • Exiting Loops
  • Hidden Features - Forgetting a Shell
  • Catching Interrupts - trap
  • Advanced Interrupt Handling
  • Text Formatting - tput
  • Cursor Positioning - backtab \b
  • Korn Shell Menus

Conditional Logic

  • Conditional Testing
  • Checking File Properties
  • Checking File Permissions
  • Complex Conditions - Nested ifs
  • Complex Conditions - elseif
  • Negation - NOT Condition
  • Combining Conditions in a Single Test
  • String Evaluation
  • Using Square Brackets for Tests
  • Preventing Empty Input
  • Numeric Evaluation
  • Advanced case Statements
  • Displaying Variable Values
  • Spacing Considerations
  • Testing Command Return Values

Iteration and Loops

  • Arithmetic - let
  • Looping Constructs - while, until
  • Infinite Loops
  • For Loops
  • Handling More than 9 Parameters - shift

Sub-scripts and Functions

  • Scope: Local vs Global Variables
  • Sub-scripts
  • The export Command
  • Exit Status Codes
  • Shell Aliases
  • Defining Functions
  • Commonly Used Functions
  • Return Status from Functions
  • Modifying Function Behavior
  • Functions within Scripts

Advanced Shell Utilities

  • Debugging Modes - set
  • Shell Settings - set
  • Combining Files - join
  • Concatenating Files - paste, basename, dirname
  • Process Management - jobs
  • Regular Expressions
  • Basic Pattern Matching - grep
  • Extended Pattern Matching - egrep
  • Fixed-String Matching - fgrep
  • Arithmetic Evaluation - expr
  • Calculator and Evaluation - bc, eval
  • Argument Parsing
  • The getopts Command
  • Working with Arrays

Advanced Editing – vi & sed

  • vi - Key Mappings
  • Mapping Control Keys
  • Using Abbreviations
  • Editing Multiple Files
  • Regular Expressions
  • Global Insertion
  • Here Documents
  • Stream Editing - sed (delete, -d; print, -p; suppress, -n; quit, -q; file, -f; multiple input)
  • Search and Replace
  • sed Practical Examples

Text Processing - awk

  • The awk Utility
  • Pattern Matching
  • Regular Expressions
  • Comparison Patterns
  • Compound Patterns
  • Range Patterns
  • Special Patterns
  • Built-in Functions
  • Debugging awk Scripts
  • Passing Arguments
  • Using the Contains Operator
  • Formatted Output - printf
  • Calculations
  • User-Defined Functions
  • String Substring - substr
  • String Length - length
  • Action Blocks
  • Control Flow Statements
  • Arrays in awk
  • Iterating Arrays with for Loops
  • awk Practical Examples

Requirements

This course is designed specifically for individuals who possess a solid understanding of UNIX or have previously completed an Introduction to UNIX course.

 21 Hours

Number of participants


Price per participant

Testimonials (7)

Upcoming Courses

Related Categories