Linux Advanced Shell Programming Tools Course Overview
The
Linux Advanced Shell Programming Tools course is designed to give delegates practical experience using a range of Linux tools to manipulate text and incorporate them into Linux shell scripts.
Skills Gained
The delegate will practice:
- Using the shell command line editor
- Backing up and restoring files
- Scheduling background jobs using cron and at
- Using regular expressions
- Editing text files with sed
- Using file comparison utilities
- Using the head and tail utilities
- Using the cut and paste utilities
- Using split and csplit
- Identifying and translating characters
- Sorting files
- Translating characters in a file
- Selecting text from files with the grep family of commands
- Creating programs with awk
Who will the Course Benefit?
Programmers, developers and system administrators who need to construct shell scripts
using advanced text handling facilities.
The
Linux Advanced Shell Programming Tools course assumes knowledge of the Linux Operating System to the level covered in the Linux Introduction Course. Some shell programming experience to the level covered in Linux Shell Programming is also necessary.
Course objectives
To provide the knowledge and skills to make effective use of a wide range of standard Linux programming and development tools.
Pre-Requisite Courses
- Linux Introduction
- Linux Shell Programming
Follow-On Courses
- Linux System Administration (LPI)
- Oracle SQL
NOTE: Course technical content is subject to change without notice.
Linux Advanced Shell Programming Tools Training Course
Course Contents - DAY 1
Course Introduction
- Introduction
- Administration and Course Materials
- Course Structure and Agenda
- Delegate and Trainer Introductions
Session 1: REVIEW OF SHELL FUNDAMENTALS
Session 2: USING UNIX SHELLS
- Command line history and editing
- The Korn and POSIX shells
- The Bash shell
- Command aliasing
- The shell startup file
- Shell environment variables
Session 3: REDIRECTION, PIPES AND FILTERS
- Standard I/O and redirection
- Pipes
- Command separation
- Conditional execution
- Grouping Commands
- UNIX filters
- The tee command
Session 4: BACKUP AND RESTORE UTILITIES
- Archive devices
- The cpio command
- The tar command
- The dd command
- Exercise: Backing up and restoring files using tar
- Exercise: Backing up and restoring files using cpio
Session 5: BACKGROUND JOB SCHEDULING
- Starting background jobs
- Background tasks and the nohup command
- Process priorities and the nice command
- Job control
- Scheduling jobs with the at command
- Scheduling jobs with the cron command
- Exercise: Running background jobs
Linux Advanced Shell Programming Tools Training Course
Course Contents - DAY 2
Session 6: REGULAR EXPRESSION NOTATION
- Regular expressions
- Extended regular expressions
Session 7: SEARCHING FILES FOR PATTERNS
- The grep family of commands
- The grep command
- The fgrep command
- The egrep command
- Exercises: Search for patterns with grep and egrep
Session 8: THE STREAM EDITOR - sed
- Introduction and command line syntax
- The sed program structure
- sed program processing
- Use sed commands
- sed addresses
- sed instructions
- Hold and get functions
- Advanced flow control
- Exercises: SessionSimple text processing with sed
- Exercises: SessionCreate sed scripts to edit files
Session 9: COMMANDS FOR COMPARING FILES
- Compare two files with the cmp command
- Compare two files with the comm command
- Compare two files with the diff and sdiff commands
- Compare large files with the bdiff command
- Exercise: Identifying file differences
Session 10: FILE MANIPULATION COMMANDS
- The head and tail commands
- The cut command
- The paste command
- The pr command
- The split and csplit commands
- Exercises: Manipulate text with cut and paste
- Exercises: Manipulate text with head and tail
Session 11: IDENTIFY AND TRANSLATE CHARACTERS
- od - octal dump
- Use cat to display non-printing characters
- The expand and unexpand commands
- The tr command
- Exercises: Translating text files with tr
- Exercises: Display non-printing characters
Linux Advanced Shell Programming Tools Training Course
Course Contents - DAY 3
Session 12: SORTING FILES
- The sort command
- Specify sort keys with -k
- Sort by column positions
- The uniq command
- Exercises: Sorting text files
Session 13: INTRODUCTION TO THE PATTERN SCANNING UTILITY - awk
- Introduction and command line syntax
- The awk program structure
- Use regular expressions
- Operators
- Simple patterns
- Extended patterns
- Comments
- Special patterns (BEGIN and END)
- Program variables
- Built-in variables
- User defined variables
- Mathematical operators
- Enhanced printing
- Handling user variables
- Exercises:Create simple awk scripts
- Exercises: Create a simple awk script using variables
Session 14: awk PROGRAM CONTROL STRUCTURES
- Program control structures
- The if construct
- The while and do ... while constructs
- The basic for construct
- Associative array handling
- Functions
- Built in functions
- The system function
- The getline function
- User defined functions
- Exercises: Create an awk script using an associative array
- Exercises: Create an awk script using a for loop and if statement
- Exercises: Create an awk script using functions