Linux Shell Programming

Course Code: LSP

Duration: 2 days

 
 
 
 

Linux Shell Programming Course Overview

This Linux Bash Shell Programming training course is designed to give delegates practical experience in developing and writing LINUX shell scripts. Most of the built-in shell commands are introduced together with the main program control structures. This course is not suitable for C shell programmers.

Similarly, the course is targeted to closely follow the official Linux Professional Institute (LPI) curriculum for certification.

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

Course Objectives

To provide the skills needed to develop and customise shell programs.

Who will the Course Benefit?

Programmers, administrators and support personnel who need to understand existing shell scripts, automate procedures and write their own utilities.

Skills Gained

The delegate will learn and acquire skills as follows:

  • Script naming conventions, locations and best practises
  • Writing simple scripts to enhance basic command output
  • Using the various shell quoting mechanisms
  • Manipulating shell variables and user-defined variables
  • Performing arithmetic within scripts
  • Script interaction and arguments
  • Implementing conditional execution facilities
  • Iteration with constructs
  • Performing multi-branch decisions
  • Implementing AWK within scripts
  • Trapping user interrupts
  • User defined Functions
  • Creating menu-driven scripts

Linux Shell Programming Training Course

Course Introduction

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

Session 1: LINUX COMMAND REVIEW

  • Basic Linux commands
  • General commands
  • File and directory handling commands
  • Filename generation characters and regular expressions (regex)
  • 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
  • Exercise: 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

Linux Shell Programming 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: SCRIPTING WITH AWK

  • Fundamentals of AWK
  • Basic AWK scripts
  • AWK within Bash constructs
  • Exercise: AWK scripts

Session 11: FUNCTIONS

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

Session 12: INTERRUPT HANDLING

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

Appendix A: ADDITIONAL FEATURES AND FACILITIES

  • The exec commands
  • The includes notation
  • More about loops
  • Arrays

Appendix B: VIM QUICK REFERENCE

Appendix C: UNIX COMMANDS QUICK REFERENCE

Appendix D: ADDITIONAL EXERCISES

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.

Examinations

This course together with the Linux Introduction course is an excellent choice for delegates preparing to take the following exam:

  • Linux Essentials (LPI, exam 010-160)

This course together with the Linux Introduction and Linux System Administration (LPI) courses are an excellent choice for delegates preparing to take the following exams:

  • Linux Administrator (LPIC-1, exams LPI 101-500 and LPI 102-500)

Attending these courses and studying the associated reference materials can form part of the preparation to achieve certification. Experience, practice, self-study and aptitude are also key requirements for exam success.

Before taking any exam, ensure you have the recommended experience. The LPI website lists all exam requirements and these are updated regularly.

Exams are not included as part of the course.

Requirements

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

Pre-Requisite Courses

Course Reviews

Great course at just the right level. Excellent instructor.

Andy - IT


Mark is a great teacher and I really enjoyed the two days course that he taught. The pace and presentation were excellent as well as the content

Dmytro


Mark was very knowledgeable and although the course was taught at a fair pace he made sure we all understood the logic of the various sections before moving on. This was my first experience of taking a course remotely and the differences between this and classroom learning were not as great as I'd feared. All in all a useful course, and well taught and administered.

Chris - Applications Support Analyst - Logistics


Very good trainer, he explains everything clearly and the combination of his slides, worked examples and the handbook work really well together.

Jenny - Digital Archivist - Government


The trainer was fantastic with all his explanation and style of teaching. Thanks

Ambrose - Application Support Analyst - Postal/Distribution


The trainer delivered a very good course. He has excellent knowledge of the subject matter and he is extremely succinct explaining complex concepts. I thoroughly enjoyed the course and feel confident I can now better understand and maintain the numerous and varied scripts that we support.

- Applications Developer - Academic


Public Scheduled Events

Classroom & Live Virtual Instructor-Led Training

Duration: 2 days

Price: £980.00 exc. VAT 


Start Date Options Spaces  
21 Nov 2024
StayAhead Virtual Courses available 
Filling Book Now 
16 Jan 2025
StayAhead Virtual Courses available 
Limited Book Now 
20 Jan 2025
StayAhead Virtual Courses available 
Spaces Book Now 
06 Feb 2025
StayAhead Virtual Courses available 
Spaces Book Now 
06 Mar 2025
StayAhead Virtual Courses available 
Limited Book Now 
17 Mar 2025
StayAhead Virtual Courses available 
Spaces Book Now 
03 Apr 2025
StayAhead Virtual Courses available 
Spaces Book Now 
01 May 2025
StayAhead Virtual Courses available 
Spaces Book Now 
12 May 2025
StayAhead Virtual Courses available 
Spaces Book Now 
05 Jun 2025
StayAhead Virtual Courses available 
Spaces Book Now 
03 Jul 2025
StayAhead Virtual Courses available 
Spaces Book Now 
07 Jul 2025
StayAhead Virtual Courses available 
Spaces Book Now 
31 Jul 2025
StayAhead Virtual Courses available 
Spaces Book Now 
04 Sep 2025
StayAhead Virtual Courses available 
Spaces Book Now 
08 Sep 2025
StayAhead Virtual Courses available 
Spaces Book Now 
02 Oct 2025
StayAhead Virtual Courses available 
Spaces Book Now 
30 Oct 2025
StayAhead Virtual Courses available 
Spaces Book Now 
03 Nov 2025
StayAhead Virtual Courses available 
Spaces Book Now 


Start Date Options Spaces  
16 Dec 2024
StayAhead Virtual Courses available 
Spaces Book Now  POA
20 Jan 2025
StayAhead Virtual Courses available 
Spaces Book Now  POA
 

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