UNIX Shell Programming for Developers
 
 

UNIX Shell Programming for Developers

Course Code: SPD

Duration: 5 days

Our training courses can also be delivered at a location of your choice...

S6

UNIX Shell Programming for Developers Course Overview

This Unix Shell Programming training course is designed to give delegates practical experience in developing and writing shell scripts. Most of the built-in unix 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.

The delegate will learn and acquire skills as follows:

  • Writing simple scripts to enhance basic command output
  • Using the various shell quoting mechanisms appropriately
  • Manipulating shell variables and user-defined variables in scripts
  • Implementing conditional execution facilities
  • Using the shell's built-in loop constructs where appropriate
  • Writing scripts to trap user interrupts
  • User defined Functions
  • Developing menu-driven shell scripts
  • Backing up and restoring files with tar
  • Advanced tar commands
  • File compression
  • 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
  • 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

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 UNIX Shell Programming for Developers course assumes knowledge of the UNIX Operating System to the level covered in the UNIX Introduction course. Some programming experience may also prove advantageous.

Course Objectives

To provide the skills needed to develop and customise unix shell programs and to make effective use of a wide range of standard UNIX programming and development tools.

Requirements

The UNIX Shell Programming for Developers course assumes knowledge of the UNIX Operating System to the level covered in the UNIX Introduction course. Some programming experience may also prove advantageous.

Pre-Requisite Courses

Follow-On Courses

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.


 

Course Contents

UNIX Shell Programming for Developers Training Course

Course Introduction

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

Session 1: UNIX COMMAND REVIEW

  • Basic Unix commands
  • General commands
  • File and directory handling commands
  • Filename generation characters
  • I/O Redirection features
  • Other commands

Session 2: GETTING STARTED

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

Session 3: USING VARIABLES

  • Environment variables
  • Local variables
  • Assigning values to variables
  • Assessing variable values
  • Using quotes
  • Delimiting variable names
  • Echo control sequences
  • Exercise: Add variables to a script

Session 4: INTEGER ARITHMETIC

  • Using the expr command
  • Using the (( )) notation
  • Exercises: Add integer arithmetic to a shell script

Session 5: HANDLING RUN TIME DATA

  • The read command
  • Command line arguments
  • Exercise: Writing a generic shell script
  • Exercise: Writing an interactive shell script

Session 6: CONDITIONAL EXECUTION

  • The if statement
  • The test command
  • Exercise: Adding validation to previous scripts

Session 7: ADDITIONAL KORN, BASH & POSIX SYNTAX

  • Other test notations
  • Default and substitute variables
  • Exit status codes
  • Exercise

UNIX Shell Programming for Developers Training Course

Session 8: LOOP CONSTRUCTS

  • The while loop
  • The until loop
  • The for loop
  • The while true and until false loops
  • Loop control commands
  • Exercise: Enhancing the previously written scripts
  • Exercise: Writing a script to copy files using a 'for' loop
  • Exercise: Writing a script to generate numbers with the 'while' loop

Session 9: MULTI-BRANCH DECISIONS

  • The case statement
  • Menu driven applications
  • Exercise: Developing and writing a menu system

Session 10: FUNCTIONS

  • What is a function?
  • Syntax
  • Examples
  • Creating a Function Library
  • Exercise: Add a function to a script

Session 11: INTERRUPT HANDLING

  • Interrupt signals
  • Trapping interrupts
  • Exercise: Adding traps to the menu script

Session 12: ADDITIONAL FEATURES AND FACILITIES

  • The exec commands
  • The includes notation
  • More about loops
  • Arrays
  • Here Documents
  • Exercise: Create a here script

UNIX Shell Programming for Developers Training Course

Session 13: 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 14: BACKGROUND JOB SCHEDULING

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

Session 15: COMMANDS FOR COMPARING FILES

  • 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
  • Exercises: Identifying file differences

Session 16: SPLITTING FILES

  • The split and csplit commands
  • Exercises: Splitting files

UNIX Shell Programming for Developers Training Course

Session 17: IDENTIFYING AND TRANSLATING CHARACTERS

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

Session 18: REGULAR EXPRESSION NOTATION REVIEW

  • Standard regular expressions
  • Extended regular expressions

Session 19: 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
  • Exercises: Text processing with sed

Session 20: FUNDAMENTALS OF AWK

  • Basic AWK usage
  • AWK program-files
  • AWK scripts
  • AWK variables
  • Pattern matching with AWK
  • AWK extended patterns
  • AWK operators
  • AWK arithmetic operations
  • AWK output
  • Formatting output with printf
  • Exercises: Create awk scripts to extract selected data from a file and generate reports

UNIX Shell Programming for Developers Training Course

Session 21: 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 22: 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 23: AWK ARRAYS

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

Session 24: 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
 

UNIX Shell Programming for Developers

Duration: 5 days

RRP: £1,995.00 exc. VAT 


Upcoming Scheduled Events
Next 12 months

Virtual StayAhead Virtual Courses available  & London Schedule
We are running a full Virtual schedule
Start Date   Spaces Book
10 Aug 2020
StayAhead Virtual Courses available  StayAhead Classroom Courses available 
Spaces StayAhead - Course Running Book
07 Sep 2020
StayAhead Virtual Courses available  StayAhead Classroom Courses available 
Spaces StayAhead - Course Running Book
16 Nov 2020
StayAhead Virtual Courses available  StayAhead Classroom Courses available 
Spaces StayAhead - Course Running Book
22 Feb 2021
StayAhead Virtual Courses available  StayAhead Classroom Courses available 
Spaces StayAhead - Course Running Book
26 Apr 2021
StayAhead Virtual Courses available  StayAhead Classroom Courses available 
Spaces StayAhead - Course Running Book
28 Jun 2021
StayAhead Virtual Courses available  StayAhead Classroom Courses available 
Spaces StayAhead - Course Running Book

Virtual Events StayAhead Virtual Courses available Attend your training using our Live Virtual Classroom solution.

Classroom Events StayAhead Classroom Courses available You can attend in our traditional classroom setting using one of our Training Centres.
In the current climate, attendance at a Training Centre will be reviewed at the time of the request.

Closed Courses Closed Classroom Courses available These Closed Company events can be offered in your own setting or using our Live Virtual Classroom solution.
Delegates can attend from your business location, their home or a location of their choice. A great way to provide training to a group of delegates in a Team environment, even when they are in diverse locations, nationally or even internationally.
 

Course Reviews

Very enjoyable and informative course with an extremely knowledgeable and enthusiastic trainer. All questions answered with real examples which always helps with additional learning methods. Thank you for an enjoyable course.

Frederick - Software Engineer - Outsourcing


Mark did a great job at walking through all the different components of the course. He was engaging and very understanding of all the delegates needs.

Bartosz - Finance


 
 
 
        Home             Let Us Call You
 

 

Course Deliveries

Public Scheduled and Closed
Virtual
UK and Overseas

OUG

Oracle User Group - Membership Benefits

OUG

Certification

Our independent Oracle, Solaris & Red Hat Linux curriculums helps prepare delegates for official certification.

StayAhead
Flexibility

Cannot see a sutiable date?
Please call us and we will try an accommodateyour needs!

StayAhead 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 Course Curriculum

 
 
 
 
 

AWS, Azure, VMWare, Cisco & Cyber Security

 
 



Our Ratings

Instructor
Quality
 

97.18%

Course
Practical
 

92.28%

Overall
Courseware
 

94.17%

Overall
Course
 

96.13%

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