Instructor-Led Red Hat Training
UNIX/Linux Fundamentals & Shell Scripting
5 days
This hands-on course teaches the basic working environment of a Linux system. It introduces commonly required operations that can be performed by entering commands interactively in a command terminal window, along with functions available in the GNOME Desktop Environment. This course presents the Linux computer professional (user, systems administrator, application/system programmer) the techniques needed to develop BASH shell scripting procedures. Each participant will be able to use Linux BASH shell, in some cases Korn Shell, capabilities to maintain collections of files, manipulate data, implement process communication, synchronization, and data sharing.
Students will learn to:
- use Linux Bash Shell techniques and commands to maintain collections of files
- create files using interactive editor utilities
- create and execute basic command procedures
- communicate with other users
- tailor the interactive environment to meet their needs
- work with and write BASH Shell Scripts
- maintain files & manipulate data
- implement process communication, synchronization, and data sharing
Course Outline
Understanding the User Environment
Unix/Linux system overview
process concepts, management, job control
the graphical environment GUI (GNOME)
Getting Started with the Command Language
logging Into a Linux system
Bash shell syntax rules
command line editing
controlling shell history
Shell environment variables
Basic Network Operations
Managing Files
file specification syntax
device specifications
directory specifications
regular expressions and special characters
Linux commands to manipulate files
file protection mechanisms - permissions
Creating and Editing Text Files
using GUI-based editors (gedit)
vim Editor
ex editor (commands within vim)
nano editor
Improving the User Interface
creating command aliases
redirection of input and output
using hard and symbolic links
process control commands
The Secure Shell (ssh)
generating private and public keys
pushing the public key
ssh operations
(trusted) login
file transfers
command execution
virtual terminal usage
User Level Tape Operations
tar / pax utility syntax
tar / pax commands for product access
using compression/uncompression commands
compress / uncompress
gzip / gunzip
Submitting and Controlling Batch Jobs
one-time execution with at
at command controls
periodic execution with crontab
crontab command controls
Writing Bash Shell Scripts
types of shell scripts
layout of a shell script
environment variables
user-defined variables
substitution of variables
command substitution in variables
decision statements (if, case)
looping statement constructs (for, while, until)
typesetting variables for output
typesetting integer variables
developing menus
using and defining functions
handling hardware and software events (trap)
defining and using indexed arrays
Advanced Features in Shell Scripts
defining and using associative arrays
option processing
accessing files, records using pipes
accessing files, records directly with exec
special parameter/variable substitutions
parent-child process communications
socket level communications
