Linux Advanced Shell Programming Tools

3 Day Course
Hands On

Book Now - 2 Delivery Methods Available:

Classroom Virtual Classroom Private Group - Virtual Self-Paced Online


The Linux Advanced Shell Programming Tools course is designed to give delegates practical experience using a range of Linux tools to manipulate text and incorporate them into Linux shell scripts.

The delegate will practise:

  • Using the shell command line editor
  • Backing up and restoring files
  • Scheduling background jobs using cron and at
  • Using regular expressions
  • Editing text files with sed
  • Using file comparison utilities
  • Using the head and tail utilities
  • Using the cut and paste utilities
  • Using split and csplit
  • Identifying and translating characters
  • Sorting files
  • Translating characters in a file
  • Selecting text from files with the grep family of commands
  • Creating programs with awk

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

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 (6 topics)

  • Archive devices
  • The cpio command
  • The tar command
  • The dd command
  • Exercise: Backing up and restoring files using tar
  • Exercise: Backing up and restoring files using cpio

Background Job Scheduling (7 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
  • Exercise: Running background jobs

Regular Expression Notation (2 topics)

  • Regular expressions
  • Extended regular expressions

Searching Files for Patterns (5 topics)

  • The grep family of commands
  • The grep command
  • The fgrep command
  • The egrep command
  • Exercises: Search for patterns with grep and egrep

The Stream Editor - sed (10 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
  • Exercises: SessionSimple text processing with sed
  • Exercises: SessionCreate sed scripts to edit files

Commands for Comparing Files (5 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
  • Exercise: Identifying file differences

File Manipulation (7 topics)

  • The head and tail commands
  • The cut command
  • The paste command
  • The pr command
  • The split and csplit commands
  • Exercises: Manipulate text with cut and paste
  • Exercises: Manipulate text with head and tail

Identify and Translate Characters (6 topics)

  • od - octal dump
  • Use cat to display non-printing characters
  • The expand and unexpand commands
  • The tr command
  • Exercises: Translating text files with tr
  • Exercises: Display non-printing characters

Sorting Files (5 topics)

  • The sort command
  • Specify sort keys with -k
  • Sort by column positions
  • The uniq command
  • Exercises: Sorting text files

Introduction to the Pattern Scanning Utility - awk (16 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
  • Built-in variables
  • User defined variables
  • Mathematical operators
  • Enhanced printing
  • Handling user variables
  • Exercises: Create simple awk scripts
  • Exercises: Create a simple awk script using variables

awk Program Control Structures (13 topics)

  • Program control structures
  • The if construct
  • The while and do ... while constructs
  • The basic for construct
  • Associative array handling
  • Functions
  • Built in functions
  • The system function
  • The getline function
  • User defined functions
  • Exercises: Create an awk script using an associative array
  • Exercises: Create an awk script using a for loop and if statement
  • Exercises: Create an awk script using functions


The Linux Advanced Shell Programming Tools course assumes knowledge of the Linux Operating System to the level covered in the Linux Introduction Course. Some shell programming experience to the level covered in Linux Shell Programming is also necessary.

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)
3 Days $1,615

Course PDF


Share this Course


Recommend this Course