Let us help you find the training program you are looking for.

If you can't find what you are looking for, contact us, we'll help you find it. We have over 800 training programs to choose from.

Intermediate Linux Essentials

  • Course Code: Linux_Unix - Intermediate Essentials
  • Course Dates: Contact us to schedule.
  • Course Category: Linux & Unix Duration: 5 Days Audience: Individuals requiring a mastery of the command line interface to the Linux operating system. This course combines aspects of the Advanced Bash Shell Programming course with practical applications for common Linux users including system administrators, programmers, and power users.

Duration: 5 days 


Individuals requiring a mastery of the command line interface to the Linux operating system. This course combines aspects of the Advanced Bash Shell Programming course with practical applications for common Linux users including system administrators, programmers, and power users. 

Course Contents 

Click each numbered item to see details. A printed document always shows all details but not this text or the following buttons. 
Expand All Collapse All 

  1. Concepts 
  1. What is Unix? 
  1. What is Linux? 
  1. Open Source vs. Free Software vs. Public Domain 
  1. Linux Components 
  1. A Historical Overview 
  1. Linux Features 
  1. Linux Programming Support 
  1. Review of the Bash Shell 
  1. Linux Components 
  1. I/O Redirection 
  1. Using Pipes 
  1. Wildcards For Filenames 
  1. Command Substitution 
  1. Variable Substitution 
  1. Quoting To Prevent Interpretation 
  1. Command Parsing Order 
  1. Introducing Shell Scripts 
  1. Special Shell Scripts 
  1. Interactive Bash 
  1. Automatic Configuration 
  1. Command History 
  1. Command Prompt Customization 
  1. Command Line Editing 
  1. Set Options 
  1. Aliases (Command Macros) 
  1. Environment Variables 
  1. Example Startup Scripts 
  1. Extended Regular Expressions 
  1. Review of Regular Expressions 
  1. Simple metacharacters 
  1. Advanced metacharacters 
  1. Extended metacharacters 
  1. The grep Command 
  1. The egrep Command 
  1. Introduction to sed 
  1. Applying Commands in a Script 
  1. Regular Expressions in sed 
  1. A Global Perspective on Addressing 
  1. Testing and Saving Output 
  1. Four Types of sed Scripts 
  1. Getting to the Promised Land 
  1. Basic sed Commands 
  1. Substitution 
  1. Delete 
  1. Append, Insert, and Change 
  1. List 
  1. Transform 
  1. Print 
  1. Next 
  1. Reading and Writing Files 
  1. Quit 
  1. Advanced sed 
  1. Multiline Pattern Space 
  1. Please Hold the Line! 
  1. Advanced Flow Control Commands 
  1. To Join a Phrase 
  1. Introduction to awk 
  1. Overview 
  1. History of awknawk, and gawk 
  1. Getting Started with awk 
  1. Regular Expressions in awk 
  1. Reading Input Files 
  1. Printing Output 
  1. Expressions 
  1. Patterns, Actions, and Variables 
  1. Advanced awk 
  1. Arrays in awk 
  1. Functions 
  1. Internationalization 
  1. Advanced Features 
  1. Library of General Use awk Scripts 
  1. Data Tools, Part III (*) 
  1. The gzip and bzip2 Commands 
  1. The tar Command 
  1. Common Monitoring Commands 
  1. The netstat Command 
  1. The vmstat Command 
  1. The top Command 
  1. The ps Command 
  1. The strace and ltrace Commands 
  1. The Source: /proc 
  1. Bash Scripts: Background 
  1. Why Shell Programming? 
  1. Steps to Creating a Script 
  1. Menu Building — Example Using select 
  1. Comments in Shell Scripts 
  1. Using Single-Value Variables 
  1. Working With Arrays 
  1. Parameter Expansion Modifiers 
  1. How to Correctly Display Error Messages 
  1. Performing Arithmetic (let and (( ))) 
  1. expr For String Matching 
  1. Interactive Scripts (the read Command) 
  1. Bash Scripts: Flow Control 
  1. The if Command 
  1. Test Operations: test[ ], and [[ ]] 
  1. The while Loop 
  1. The for Loop 
  1. Changing the Script Parameters (set) 
  1. Loop Control (break and continue) 
  1. The case Command 
  1. Exiting a Shell Script 
  1. Menu Building — Complete Example 
  1. Using at and crontab 
  1. Overview of at and crontab 
  1. The at Command 
  1. Using crontab 
  1. Sample Crontab File 
  1. Summary 
  1. Bash Scripts: User Interaction 
  1. Using getopts For Handling Command Line Options 
  1. The trap Command 
  1. Setting Runtime Options in the Bash Shell 
  1. Bash Scripts: Efficiency 
  1. Subshells and IO Redirection: ( ){ }, and exec 
  1. Conditional Execution (&& and ||) 
  1. Temporary Files With mktemp 
  1. Floating Point Arithmetic 
  1. HERE Documents and HERE Strings 
  1. Shell Functions 
  1. Advanced Bash Features 
  1. In-Depth Shell Functions 
  1. Autoload Functions via FPATH 
  1. Using eval 
  1. Advanced I/O Redirection Using exec 
  1. Process Expansion: <(list) and (list) 
  1. Coprocesses (New in Bash 4.0+) 
  1. Using the bind Command for Keystroke Handling 
  1. Performance Evaluation and Tuning 
(*) Prerequisite chapters are in the Bash Shell Programming course. 

Course Objectives 

Upon completion of this course, the student will be able to write Bash Shell scripts using the following features and more: 

  • I/O redirection, pipes, and command and variable substitution, 
  • Passing parameters to shell scripts and interpreting their meaning, 
  • Controlling the program flow using conditionals and loops, 
  • Catch and interpret Control-C and other asynchronous events, and 
  • Apply debugging techniques to quickly locate coding errors. 

Shell scripting is equal parts of running commands and processing the results generated by those commands. This course covers the most important of the text processing commands that are frequently used in efficient shell scripts, and combines that with the built-in control functions of the shell to make them fast and effective. Each chapter includes discussion of when to use each feature, so that students gain an understanding of what works best in a particular situation. Best practices are described throughout the course. 

Instructional Technique 

Students are invited to bring their current ideas and questions to the classroom for discussion. Case studies, lecture, group problem solving, and online laboratories will be used. Students will be encouraged to enhance their skills utilizing the techniques presented through classroom problem solving and controlled online workshops. 


Completion of an Introduction to Unix or similar course, and six months of command line experience on a Unix/Unix-like operating system. See below for a quick quiz to determine if you’re ready for this fast-paced course. 

Programming skills are not required, but are helpful. 

View All Courses

    Course Inquiry

    Fill in the details below and we will get back to you as quickly as we can.

    Interested in any of these related courses?