Shell Programming - UNX500
| Next public classes scheduled: | ||
| Apr 10 2012 | ||
Duration: 3 days
Audience: UNIX users, programmers, and system administrators.
Prerequisites: Fundamentals of UNIX
Topics:
UNIX Processes
- What is a Process?
- Process Structure
- The ps Utility
- Options to the ps Utility
- Background Commands
- Killing Background Processes
- Redirecting the Standard Error
Getting Started
- What is a Shell?
- Running Scripts
- Specifying the Script's Interpreter
- The PATH Environment Variable
- Sub-shells
Variables
- Shell Variables
- The read Command
- The export Command
- The Shell Environment
- Variable Substitution
- Command Substitution
The Login Process
- The Login Process
- The System Profile Script
- Your .profile Script
- The . Command
Conditional Statements
- The Exit Status of Commands
- Command Line Examples
- The test Command
- The if-then-else Construct
- The elif Construct
- case Statements
Loops
- The for Loop
- The while Loop
- Reading Lines From Files
- Using Arrays with Loops
Special Variables
- $$ - PID of Shell
- Command-Line Arguments
- $- Number of Arguments
- $* - All Arguments
- The shift Command
- The set Command
- Getting Options
Quoting Mechanisms
- Single vs. Double Quotes
- What is a Here Document?
- Using a Here Document
- Here Document Quoting
- Ignoring Leading Tabs
Functions
- Shell Functions
- Passing Arguments to Functions
- Returning Values from Functions
- Function Libraries
Advanced Programming
- Shell Arithmetic
- The select Statement
- Terminal Independence in Scripts
- The eval Command
Debugging Techniques
- Using echo
- Using Standard Error
- Options for Debugging
- Script Tracing
- Conditional Debugging
Shell IPC
- Co-processes
- The print and read Commands
- Signals
- The trap Command
- Named Pipes
- The wait Command



