Unix Shell Programming for Developers

5 Day Course
Hands On
Code SPD

Book Now - 2 Delivery Methods Available:

Classroom Virtual Classroom Private Group - Virtual Self-Paced Online


This course is designed to give delegates practical experience in developing and writing shell scripts. Most of the built-in shell commands are introduced together with the main program control structures. The course also gives practical experience using a range of UNIX tools to manipulate text and incorporate into UNIX shell scripts.

This course will benefit programmers, developers and system administrators who need to construct shell scripts using advanced text handling facilities.

Training Partners

We work with the following best of breed training partners using our bulk buying power to bring you a wider range of dates, locations and prices.


Collapse all

Unix Command Review (3 topics)

  • Basic UNIX commands
  • Filename generation characters
  • Redirection and pipes

Getting Started (5 topics)

  • What is a shell script?
  • Development guidelines
  • Creating and editing shell scripts
  • Naming and storing shell scripts
  • Executing shell scripts

Using Variables (7 topics)

  • Environment variables
  • Local variables
  • Assigning values to variables
  • Accessing variable values
  • Using quotes
  • Delimiting variable names
  • echo control sequences

Interger Arithmetic (2 topics)

  • Using the expr command
  • Using the (( )) notation

Handling Run Time Input (2 topics)

  • The read command
  • Command line arguments and related variables

Condition Testing (9 topics)

  • The if-then-elif-else statement
  • String tests
  • Integer tests
  • Filename tests
  • Other test notations
  • Default and substitute variables
  • Exit status codes
  • Counting characters
  • Testing for numeric input

Loop Constructs (5 topics)

  • The while loop
  • The until loop
  • The while true and until false loops
  • The for loop
  • Loop control commands

Multi-branch Decisions (3 topics)

  • The case statement
  • Patterns and actions
  • Menu driven applications

Functions (2 topics)

  • What is a function?
  • Function syntax

Interrupt Handling (3 topics)

  • Interrupt signals
  • The trap command
  • Abnormal termination of scripts

Review of Shell Fundamentals (1 topic)

  • Review of UNIX Commands

Using Unix Shells (6 topics)

  • Command line history and editing
  • The Korn and POSIX shells
  • The Bash shell
  • Command aliasing
  • The shell startup file
  • Shell environment variables

Redirection, Pipes and Filters (7 topics)

  • Standard I/O and redirection
  • Pipes
  • Command separation
  • Conditional execution
  • Grouping Commands
  • UNIX filters
  • The tee command

Backup and Restore Utilities (4 topics)

  • Archive devices
  • The cpio command
  • The tar command
  • The dd command

Background Job Scheduling (6 topics)

  • Starting background jobs
  • Background tasks and the nohup command
  • Process priorities and the nice command
  • Job control
  • Scheduling jobs with the at command
  • Scheduling jobs with the cron command

Regular Expression Notation (2 topics)

  • Regular expressions
  • Extended regular expressions

Searching Files for Patterns (4 topics)

  • The grep family of commands
  • The grep command
  • The fgrep command
  • The egrep command

The Stream Editor - sed (8 topics)

  • Introduction and command line syntax
  • The sed program structure
  • sed program processing
  • Use sed commands
  • sed addresses
  • sed instructions
  • Hold and get functions
  • Advanced flow control

Commands for Comparing Files (4 topics)

  • Compare two files with the cmp command
  • Compare two files with the comm command
  • Compare two files with the diff and sdiff commands
  • Compare large files with the bdiff command

File Manipulation Commands (5 topics)

  • The head and tail commands
  • The cut command
  • The paste command
  • The pr command
  • The split and csplit commands

Identify and Translate Characters (4 topics)

  • od - octal dump
  • Use cat to display non-printing characters
  • The expand and unexpand commands
  • The tr command

Sorting Files (4 topics)

  • The sort command
  • Specify sort keys with -k
  • Sort by column positions
  • The uniq command

Introduction to the Pattern Scanning Utility - awk (12 topics)

  • Introduction and command line syntax
  • The awk program structure
  • Use regular expressions
  • Operators
  • Simple patterns
  • Extended patterns
  • Comments
  • Special patterns (BEGIN and END)
  • Program variables
  • Mathematical operators
  • Enhanced printing
  • Handling user variables

awk Program Control Structures (6 topics)

  • Program control structures
  • The if construct
  • The while and do ... while constructs
  • The basic for construct
  • Associative array handling
  • Functions


Delegates should have attended UNIX Introduction, or have similar knowledge and skills.

Additional Learning

The courses below may help you meet the knowledge level required to take this course.

Scheduled Dates

Please select from the dates below to make an enquiry or booking.


Different pricing structures are available including special offers. These include early bird, late availability, multi-place, corporate volume and self-funding rates. Please arrange a discussion with a training advisor to discover your most cost effective option.

Code Location Duration Price Jun Jul Aug Sep Oct Nov
Virtual Classroom (London)
5 Days $2,395

Course PDF


Share this Course


Recommend this Course