Shell Programming Training in Lakeville

Enroll in or hire us to teach our Shell Programming class in Lakeville, Minnesota by calling us @303.377.6176. Like all HSG classes, Shell Programming may be offered either onsite or via instructor led virtual training. Consider looking at our public training schedule to see if it is scheduled: Public Training Classes
Provided there are enough attendees, Shell Programming may be taught at one of our local training facilities.
We offer private customized training for groups of 3 or more attendees.

Course Description

 

Shell programs, or scripts, are the means by which a UNIX™ shell is used as a programming language. UNIX commands and shell language control constructs are entered into a file by the programmer, then the file is executed as a command and interpreted just as if the commands had been typed on the shell command line. Thus, shell scripts provide a way to automate commonly executed groups of commands - but shell scripts can do much more than this. Although many simple tasks are automated with small scripts, large scripts hundreds of lines long are very common. These larger scripts are written by system administrators, database administrators, testers, utility programmers, and others to create utilities that are largely composed of powerful UNIX commands, such as find, sed, awk, and hundreds of others. In this course, students learn to read, write, and debug Korn shell scripts. Back at work they can greatly increase productivity by automating repetitive tasks (for themselves or others), and by creating specifically tailored utilities designed to meet their precise needs. Students will read and write many shell scripts in this class, which will additionally increase their overall UNIX knowledge and skills.

Course Length: 3 Days
Course Tuition: $1090 (US)

Prerequisites

Fundamentals of UNIX.

Course Outline

 
Course Introduction
 
Course Objectives
Course Overview
Using the Workbook
Suggested References
 
UNIX Processes
What is a Process?
Process Structure
The ps Utility
ps Options
Background Command
Killing Background Processes
Redirecting the Standard Process
Labs
 
Getting Started
What is a Shell?
Running Scripts
Specifying the Script's Interpreter
The PATH variable
Sub-shells
Labs
 
Variables
Shell Variables
The read Command
The export Command
The Shell Environment
Variable Substitution
Command Substitution
Labs
 
The Login Process
The Login Process
The System Profile Script
The .profile Script
The . Command
Labs
 
Conditional Statements
The Exit Status of Commands
Command Line Examples
The test Command
The if-then-else Construct
The elif Command
case Statements
Labs
 
Loops
The for Loop
The while Loop
break and continue
Reading Lines From Files
Using Arrays with Loops
Labs
 
Special Variables
$$ - PID of Shell
Command-Line Arguments
$# - Number of Arguments
$* - All Arguments
The shift Command
The set Command
Getting Options
Labs
 
Quoting Mechanisms
Single vs. Double Quotes
What is a Here Document?
Using a Here Document
Here Document Quoting
Ignoring Leading Tabs
Labs
 
Functions
Shell Functions
Passing Arguments to Functions
Returning Values from Functions
Function Libraries
Labs
 
Advanced Programming
Shell Arithmetic
The select Statement
Terminal Independence in Scripts
The eval Command
Labs
 
Debugging Techniques
Using echo
Using Standard Error
Options for Debugging
Script Tracing
Conditional Debugging
Labs
 
Shell IPC
Co-processes
The print and read Commands
Signals
The trap Command
Named Pipes
The wait Command
Labs

Course Directory [training on all levels]

Upcoming Classes
Gain insight and ideas from students with different perspectives and experiences.

Interesting Reads Take a class with us and receive a book of your choosing for 50% off MSRP.