What you will learn
The Shell Programming course provides students with the skills to read, write, and debug UNIX shell scripts. The course
begins by describing simple scripts to automate frequently executed commands and continues further by describing
conditional logic, user interaction, loops, menus, traps, and functions.
This course is intended for system administrators who have mastered the basics of any flavor of the UNIX OS, such as
Oracle Solaris and Oracle Linux, and would like to interpret the various boot scripts as well as create their own scripts to
automate their day-to-day tasks.
Create scripts to automate system administration tasks.
Set local and environmental variables.
Automate tasks by using regular expression characters with the grep, sed, and nawk utilities.
Create interactive scripts by using flow control constructs.
Perform string manipulation and integer arithmetic on shell variables.
Debug errors in scripts.
Benefits to You
The Shell Programming course provides you with the ability to identify various shells and automate system
administration tasks through scripts. You learn to develop advanced scripts that involve using decision making
algorithms, loops, variables, parameters and arguments lists.
The course also introduces you to functions that enable you to perform repetitive tasks and the various methods to
Finally, the course concludes by imparting some initial skills at developing useful scripts to automate system
Students are provided with the option to run the lab activities on either an Oracle Solaris or Oracle Linux environment.
Able to manage files using vi.
Perform basic operating system routines such as system run levels.
Perform simple system administration routines like user creation and software installations.
Run basic system commands like rm, cp, man, more, mkdir, ps, chmod, pkgadd, pkgrm, and pkginfo on Oracle Solaris
or similar UNIX platform.
UNIX and Linux Essentials
Oracle Solaris 11 System Administration Ed 3
Oracle Solaris 11 System Administration Ed 4
Automate routine operations using loops
Describe the fundamentals of UNIX shells, shell scripts, and scripting
Set shell environment variables
Search information using regular expressions
Edit input streams using the sed editor
Create scripts using the nawk programming language
Include decision-making points within scripts using conditionals
Perform multiple operations using interactive scripts
Specify script options using the getopts statement
Create advanced scripts using variables, parameters, and argument lists
Automate tasks using functions
Debug shell scripts using the trap command
Develop some useful scripts for system administration-related tasks
Describe the role of shells in the UNIX environment
Describe the various UNIX/Oracle Solaris shells
Describe the structure of a shell script
Create a simple shell script
Implement the various debugging options in a shell script
Explain the role of startup scripts in initializing the shell environment
Describe the various types of shell variables
Explain command line parsing in a shell environment
Describe the grep command
Explain the role of regular expressions in pattern matching
Describe the sed editor
Perform non-interactive editing tasks by using the sed editor
Describe nawk as a programming language
Display output by using the print statement
Perform pattern matching by using regular expressions
Use the nawk built-in and user-defined variables
Display output by using the print and echo statements
Accept user input by using the read statement
Describe the role of file descriptors in file input and output
Describe the various types of scripting variables
Define positional parameters for accepting user input
Describe the role of the if statement in testing conditions
Describe the syntaxes for the if/then/else and if/then/elif/else statements
Choose from alternatives by using the case statement
Perform numeric and string comparisons
Compare data by using the &&, ||, and ! Boolean operators
Distinguish between the exit status and the exit statement
Describe the for, while, and until looping constructs
Create menus by using the select looping statement
Provide variable number of arguments to the script by using the shift statement
Describe the role of the getopts statement in parsing script options
Create user-defined functions in a shell script
Use the typeset and unset statements in a function
Autoload a function file into a shell script
Describe the role of shell signals in interprocess communication
Catch signals and user errors with the trap statement