Linux Advanced Shell Programming Tools

Course Code: LASP

Duration: 3 days

 
 
 
 

Linux Advanced Shell Programming Tools Course Overview

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.

Exercises and examples are used throughout the course to give practical hands-on experience with the techniques covered.

Course objectives

To provide the knowledge and skills to make effective use of a wide range of standard Linux programming and development tools.

Who will the Course Benefit?

Programmers, developers and system administrators who need to construct shell scripts and process text files using advanced text handling facilities.

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.

Skills Gained

The delegate will learn and acquire skills as follows:

  • Backing up and restoring files with tar
  • Advanced tar commands
  • File compression
  • Formatting and viewing file content
  • Scheduling background jobs with crontab and at
  • Comparing file contents
  • Splitting files based on content and context
  • Identifying and translating characters
  • Use og grep and regular expressions
  • Basic and advanced file editing with sed
  • Writing output to temporary files
  • Creating AWK program-files and scripts
  • Pattern matching with AWK
  • AWK variables, operators and arithmetic functions
  • AWK program control structures
  • AWK functions
  • AWK associative and multi-dimensional arrays
  • Various miscellaneous commands

Linux Advanced Shell Programming Tools Training Course

Course Introduction

  • Administration and Course Materials
  • Course Structure and Agenda
  • Delegate and Trainer Introductions

Session 1: BACKUP AND RESTORE UTILITIES

  • Backing-up and restoring files
  • Basic and advanced use of tar
  • Compression utilities gzip, bzip2, zip and compress
  • Exercise: Backing up and restoring files using tar
  • Exercises: Compressing files

Session 2: BACKGROUND JOB SCHEDULING

  • Scheduling jobs with the cron command
  • Scheduling jobs with the at command
  • Exercises: Running background jobs

Session 3: COMMANDS FOR COMPARING FILES

  • Compare files with the cmp command
  • Compare and format files with pr
  • Compare files with the comm command
  • Compare files with the diff and sdiff commands
  • Compare large files with the bdiff command
  • Exercises: Identifying file differences

Session 4: SPLITTING FILES

  • The fold command
  • Split files using context and content rules
  • Exercises: Splitting files

Linux Advanced Shell Programming Tools Training Course

Session 5: IDENTIFYING AND TRANSLATING CHARACTERS

  • od - octal dump
  • Use cat to display non-printing characters
  • View and format files with nl
  • The expand and unexpand commands to convert between tab and space characters
  • The tr command for character translation
  • Exercises: Translating characters with tr

Session 6: REGULAR EXPRESSION NOTATION REVIEW

  • Standard regular expressions
  • Searching with grep
  • Metacharacters, positional characters and quantifiers
  • Extended regular expressions
  • POSIX character classes
  • PERL expressions

Session 7: THE STREAM EDITOR sed

  • sed command line syntax
  • sed script files
  • sed command processing
  • sed addresses and simple instructions
  • sed pattern space and hold space
  • Grouping sed commands
  • Hold and get functions
  • Advanced flow control
  • Write output to temporary files
  • Exercises: Text processing with sed

Session 8: FUNDAMENTALS OF AWK

  • Basic AWK usage
  • AWK program-files
  • AWK scripts
  • AWK variables
  • Pattern matching with AWK
  • AWK extended patterns

Session 9: AWK OPERATORS

  • AWK AND, OR and range operators
  • AWK arithmetic operations
  • AWK output
  • Formatting output with printf
  • Exercises: Create awk scripts to extract selected data from a file and generate reports

Linux Advanced Shell Programming Tools Training Course

Session 10: AWK PROGRAM CONTROL STRUCTURES

  • The BEGIN and END functions
  • The AWK if construct
  • The AWK else if construct
  • The AWK while construct
  • Other program control statements
  • The AWK break, continue and exit statements
  • User defined functions
  • Exercises: Create AWK scripts and program-files utilising program control structures

Session 11: AWK FUNCTIONS

  • AWK string functions
  • AWK length, tolower, toupper, index, sub, gsub, match, substr, split, sprintf, system and getline functions
  • Exercises: Generate AWK scripts and program-files to extract and format data using AWK functions

Session 12: AWK ARRAYS

  • AWK associative arrays
  • Multi-dimensional arrays
  • Exercises: Create AWK associative arrays to process text files and generate reports

Session 13: MISCELLANEOUS TOOLS

  • bc (calculator)
  • fuser (testing for files in use)
  • getops (checking options passed to shell scripts)
  • printf (formatting screen output)
  • logger (script logging)
  • xargs (generating arguments for a command)
  • eval (re-evaluating variables)
  • Exercises: Using tools within a shell script
Notes:
  • Course technical content is subject to change without notice.
  • Course content is structured as sessions, this does not strictly map to course timings. Concepts, content and practicals often span sessions.

Requirements

The Linux Advanced Shell Programming Tools course assumes knowledge of the Linux operating system to the level covered in the Linux Introduction course. Knowledge of Linux Shell Programming to the level covered on the Linux Shell Programming course is also a requirement. Alternatively, relevant experience of UNIX or Linux servers is required.

Pre-Requisite Courses

Course Reviews

Very good training. Teacher is extremely clear, explains perfectly, has very deep knowledge, and - last but not least - very nice, kind, ... 5 stars teacher !

Damien - Linux / Cyber Engineer - Government - November 2024

Very happy with the course, the manual was spot on and the Lecturer for the course was fantastic, helped with all my questions and queries, and explained everything in great detail. I have thoroughly enjoyed this course and would recommend it to anybody!

Chris - IT Support - IT

Fantastic tutoring, went at a good pace and threw in a lot of little hints and tips I will be using in day to day work.

Lian - IT

Very good course with brilliant lecturer. Everything was explained in a clear and interesting way, even for somebody who is not English native speaker. I can only recommend this course and the trainer for his understanding and how easily he can adjust the explanation technique to a delegate level of understanding.

Krzysztof - IT Engineer - IT

Public Scheduled Events

Classroom & Live Virtual Instructor-Led Training

Duration: 3 days

Price: £1,550.00 exc. VAT 


Start Date Options Spaces  
22 Jan 2025
StayAhead Virtual Courses available 
Spaces Book Now 
19 Mar 2025
StayAhead Virtual Courses available 
Spaces Book Now 
14 May 2025
StayAhead Virtual Courses available 
Spaces Book Now 
09 Jul 2025
StayAhead Virtual Courses available 
Spaces Book Now 
10 Sep 2025
StayAhead Virtual Courses available 
Spaces Book Now 
05 Nov 2025
StayAhead Virtual Courses available 
Spaces Book Now 
 

Live Virtual Classroom

 
Join live instructor-led classroom training from the comfort of your home or office.
All the convenience and benefits of the classroom experience without the hassle and costs of travel and accommodation.
 
 



Our Customers Include

 
EDF
Amazon
American Express
Aviva
QA
BAE
University of Cambridge
Barnardo's
Scottish Government
Bauer
Bloomberg
BP
HSBC
DVLA
GlaxoSmithKline
Government Campus
Capita
Tui
NHS
Ordnance Survey
Ministry of Defence
Zurich Insurance Group
trainline
Vodafone
 
 



Our Course Curriculum

 
 
 
+44 (0)20 7600 6116
Enquiries@StayAhead.com
Copyright © 2024 StayAhead Training Ltd
Cookies   /   Privacy Policy