0345 4506120

Linux Shell Programming

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.

Who will the Course Benefit?

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

  Reset

Learning Objectives

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

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

Pre-Requisites

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

    • Linux Introduction

Follow-On Courses

  • Linux System Administration (LPI & CompTIA
  • Linux Advanced Shell Programming Tool
  • TCP/IP Networkin
  • Oracle SQL
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 Content

Course Contents - DAY 1

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

Course Contents - DAY 2

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
  • 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

Exams & Certification

This course, together with the Linux Introduction course, helps delegates prepare for the following exam:

Linux Essentials (LPI, exam 010-160)

This course, together with the Linux Introduction and Linux System Administration (LPI & CompTIA) courses, helps delegates prepare for the following exams:

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

CompTIA Linux+ (exams LX0-103, LX0-104 and XKO-004)

Attending this relevant course will help delegates gain many of the skills and product knowledge requirements as outlined in the exam objectives. Studying this course and its 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 and CompTIA websites lists all exam requirements and these are updated regularly.

Exams are not included as part of the course.

Privacy Notice

In order to provide you with the service requested we will need to retain and use your contact information in accordance with our Privacy Notice. If you choose to provide us with this information you explicitly consent to us using the information as necessary to provide the requested service to you. If you do not agree please do not proceed to request the service from us.

Marketing Permissions

Would you like to receive our newsletter and other information on products and services which we think will be of interest to you by email. We will always treat your information with care and in accordance with our Privacy Notice. You are free to withdraw this permission at any time.

 

Virtual Classroom

Virtual classrooms provide all the benefits of attending a classroom course without the need to arrange travel and accomodation. Please note that virtual courses are attended in real-time, commencing on a specified date.

Virtual Course Dates

Our Customers Include