About Trainer

  • 11 years of IT experience
  • 2+ years of onsite experience
  • Working as an Architect
  • Sound Technical Skills
  • Excellent in Communication

About Unix Shell Scripting


Course Pre-requisites: None

Lab setup: RHEL 32/64 bit

Training Material:

  • Class PPT’s (Soft Copy)
  • Class recordings (optional)


UNIX Background

  • Introduction about Operating System(OS)
  • Introduction to UNIX
  • List of UNIX vendors available in Market
  • Introduction to various UNIX Implementations
  • History of UNIX OS Evolution from 1969
  • Open Source (vs.) Shared source (vs.) Closed source
  • Is Unix Open Source software?


  • LINUX OS background
  • Popular LINUX distributions/Vendors
  • Similarities between Unix & Linux
  • Differences between Unix & Linux
  • About POSIX standards

UNIX System architecture

  • Hardware
  • Kernel
  • Shell
  • Utilities and User programs
  • Layers in Unix OS
  • Unix Servers/Dumb terminals/nodes

UNIX System features

  • Multitasking
  • Multiuser
  • Easy Portability
  • Security
  • Communication

UNIX day-to-day used commands

  • System Information commands (uname, date, etc)
  • man command
  • User Related (w, who, etc)
  • Terminal Related (stty, etc)
  • Filter commands (more, less, etc)
  • Miscellaneous commands (cal, banner, clear, etc)
  • Viewing exit status of commands
  • Disk Related commands

UNIX File System

  • Introduction to Unix tree structure
  • Inode representation
  • Introduction to 3 types of files – Ordinary, Directory, Special
  • 3 different ways of new file creation(touch, cat, vi)
  • File system commands (ls, mkdir, cd, etc)
  • Wild card characters
  • File Permissions& security

Input/output Redirection and piping

  • Introduction to Redirection/piping
  • Output Redirection Example
  • Input Redirection Example
  • Error Redirection Example

UNIX Processes

  • Introduction to Unix processes
  • Program (vs.) Process
  • System processes & commands
  • User processes & commands
  • Finding processes information using ‘grep’
  • Background & foreground processing
  • Kill signal
  • Setting process priorities
  • Avoiding hang-ups using ‘nohup’

Job Scheduling

  • Introduction to job scheduling
  • Run jobs at regular intervals using crontab
  • Run jobs at specific intervals using ‘at’

UNIX communication

  • On-line communication using write, wall, talk, etc
  • Off-line communication using mail, news, etc

UNIX Environment Variables

  • Introduction to ‘echo’ command
  • System defined environment variables
  • User defined environment variables
  • Creating user defined environment variables.

VI Editor

  • Introduction to Visual Editor
  • Understanding 3 basic modes of operations
  • Cursor Movement commands
  • Scrolling commands
  • Editing text commands
  • Copying and pasting text
  • Shell commands
  • Text Buffers
  • Search commands

UNIX System files & Default User settings

  • Introduction to system files (/etc/passwd)
  • Creating user aliases ($HOME/.bashrc)
  • Sourcing environment ($HOME/.bash_profile)
  • Logout action file ($HOME/.bash_logout)

UNIX Shell Scripting

  • Introduction to Shell
  • Types of shells
  • Evolution/History of various Unix shells
  • Introduction to Shell scripting
  • Difference between programming and scripting
  • Steps in handling shell scripts
  • Writing first shell script - “Hello World...!”

Shell Scripting basic examples

  • Adding comments
  • Displaying output to screen
  • Variables declaration
  • Arithmetic operations
  • Read Input from command line
  • Interactive Addition program
  • Positional Parameters
  • Command Line arguments
  • Arithmetic operations using command line arguments
  • Command line arguments using SHIFT operator
  • Scope of Variables

Conditional Statements

  • Sequence control structure (vs.) decision making structure
  • If-then-fi statement
  • If-then-else-fi statement
  • If-then-elif-else-fi statement
  • TEST command
  • case - esac statement
  • String operations
  • Examples

Flow control statements

  • For Loop
  • While loop
  • Until loop
  • Loop nesting
  • Break/continue commands
  • Examples on For/While/Until
  • For + ls example
  • While + case example
  • If + grep example
  • For + sed + awk example

Compression & Archive commands

  • Introduction to Archiving
  • Introduction to Compression
  • Archive (vs.) compression
  • Creating archives
  • Compressing & un-compressing files
  • Compressed Archives

Miscellaneous, but useful topics

  • Transferring files between Unix servers using FTP
  • Remote login to another Unix server
  • Starting and shutting down the servers
  • Writing C programs in Unix OS
  • Compiling and debugging C programs in Unix OS

Advanced Shell Scripting (SED, CUT):

  • SED Introduction
  • Difference between “” and ‘’
  • s for substitution
  • SED Delimiters
  • Using & as the matched string
  • SED Multiple instructions
  • Multiple instructions through script
  • Printing, Deleting in SED
  • cut, tr commands
  • Lab Exercises

Advanced Shell Scripting (SED, CUT):

  • AWK Introduction
  • AWK Basic syntax & Examples
  • AWK Inbuilt variables (FS, OFS, NR, RS, FILENAME)
  • BEGIN, PRINT, END blocks in AWK
  • Inbuilt AWK functions (length, Index, sub, substr, tolower, toupper, split)
  • IF Condition
  • Loops (While, DO … WHILE, FOR)
  • Break - Continue - Exit
  • Arrays
  • Lab Exercises



  • The fact that they have a set format of teaching, which creates a schedule for a student, and a step-by-step process that covers the entire Netezza syllabus. I can surely assure eTraining provides a great help for Netezza curriculum.
    - Shannon D.

  • The BEST I liked about the tutors in eTraining is the amount of practical knowledge these guys have and the way they bring in the same to students perspective while Teaching. Glad I took DB2 course from eTraining.
    - Rubeena Khan

  • I found classes very helpful. What you Teach is AWESOME
    - Gopal