In this course you learn how to perform advance tasks in Linux.
Learning Objectives
In this hands-on self-paced course you will learn:
- How to write and run shell scripts
- Using conditional constructs to control script execution
- Manipulating strings
- Command-line processing
- Using regular expressions
- String processing utilities: sed,grep and awk
- Counting words, lines and characters
- Working with compression utilities
- Writing functions
- Managing processes
- Using the ksh and bash commands
- Working with UNIX I/O streams
Topics and Subtopics
The following outline is covered in this course.
1- Introduction
- Comparing Popular Shells
- Korn Shell Compatibility for Bash
- Korn and Bash Shell Advantages
- Korn and Bash Shell Disadvantages
- Versions of ksh and bash
- Shell Command Syntax
- Comments
- Continuing a Command on Multiple Lines
- Special Characters
- Pattern Matching
- Complex Pattern Combinations
- Tilde Expansion
2- Process Management
- Process Priority
- Background Jobs
- Signals
- Traps
- DEBUG and EXIT
- ksh Co-Processing
- bash Co-Processing
- Pausing
- Time and Date
- Scheduling Execution
- Run Commands Later
- Aliases
- How the Shell Finds Commands
- Command History and Editing
3- Writing Scripts
- Shell Programming Language
- Reserved Words
- How to Write and Run Scripts
- Debugging
- Data Types
- Using Variables
- The typeset Command
- Constants
- Special Predefined Variables
- Printing to the Screen (echo, print)
- The printf Command
- Accepting Input with ksh
- Accepting Input with bash
- Arithmetic Operators
- Floating-Point Numbers
- Bitwise Operators
- Grouping Operations
- Binary, Octal, and Hexadecimal
- Indexed Arrays
- Quoting
- Command Substitution
4- Advanced Customization of the Shell Environment
- Command Line Options
- The set command
- Parents and Children
- Inheritance
- Exporting
- Dot Scripts
- Startup Scripts
- Environment Variables
- Setting Prompts in ksh and bash
5- Programming Logic
- Conditional Expressions
- Testing Strings
- Testing Options
- Numeric Conditions
- Testing Completion Status
- Truth in Korn and Bash Shells
- The case Statement
- Loops: while and until
- The for Loop
- Menus and the select Statement
- Redirection and Loops
- When to Use Different Constructs
6- Advanced I/O with Streams
- Redirection Review
- Opening Additional Streams
- Redirection Operators
- Inheriting and Duplicating Streams
- Caution with exec
- here Documents
7- String Manipulation
- String Comparison
- String Relations
- Concatenation
- Substring Manipulations
- Wildcards and Pattern Matching
8- Security
- Process Ownership
- suid and sgid
- Restricted Shells
- Other Security Features
- The newgrp Command
- Statement blocks
- case Statement
9- Command Line Processing
- Getting Data Into Scripts
- Manipulating Positional Parameters (set, sort, shift)
- Analyzing Switches with Getopts Options
- Reserved Variables (OPTARG, OPTIND, IFS)
- Setting Default Values
10- Performance and Porting Issues
- Improving the Performance of Scripts
- Timing Commands and Scripts
- System Resources
- Setting Limits
- Portability Issues
11- Overview of File Manipulation Utilities
- Editing a File from a Script
- Scripting with ed or sed
- UNIX and Linux Utilities to Manipulate Files
- Regular Expressions
- grep and egrep
- The Stream Editor sed
- Sorting in Scripts
- Generating Reports with awk
- Splitting Large Files
- Counting Words, Lines, and Characters
- Transforming File Contents
- Extracting Text Strings
12- Additional File Processing Commands
- Examining and Comparing Files
- Reporting Differences Between Files
- Comparing Files of Any Format
- Displaying Data in Octal and Hex
- Compressing Data
- Converting File Formats
13- Functions
- Writing Functions
- Returning Value from Functions
- Returning String Output
- Local and Global Variables
- Defining Functions
- ksh Autoload Functions
14- Compound Commands
- Pipelines
- Command Lists
- And and Or Lists
- Background Jobs
- Command Grouping
- I/O Redirection
Requirements
Good knowledge of Linux commands and Linux Bash Scripting.
Related Courses
Complete Training Bundle
If you are serious about becoming a pro system admin or cloud specialist, you should enroll in our System Admin- Complete Training Bundle. This bundle covers all essential and practical topics related to system administration. For $290 monthly subscription, you can have access to 300+ hours of hands-on project-based training covering all courses related to system administration like Linux, SQL, No-SQL, or Graph database development, bash scripting, Docker, Kubernetes and many more. Click here to learn more.
Private Tutoring Classes
To take skills you learn from this course to the next level, taking the Coding Bootcamps school tutoring classes are highly recommended. It is also a great opportunity to discuss your questions and problems related to this course with an experienced instructor:
- Private tutoring sessions for system administrator management- Weekly and monthly plans
- Linux and bash scripting- Private tutoring sessions
Linux Live Classes
- Essential Linux Commands in 6 Hours by Hands-on Exercises
- Linux Bash & Shell Scripts in 6 Hour by Hands-on Exercises
Red Hat Certifications
- Red Hat Certified System Administrator Live Training Class
- Live training class for obtaining Red Hat Certified Engineer certification
What Is Next?
After finishing this course, you can enroll in any of following classes:
- Learn SQL Programming by Examples
- Learn PHP Programming
- Linux Management for System Admins
- Web Development with PHP & MySQL
Recommended Free Courses
If you are new to the IT or programming, we suggest the following free courses:
Course Curriculum
- Lecture PDF File for Session 3
- a- Shell Programming Language, and Reserved Words (4:02)
- b- Write and Run Scripts, Debugging & Data Types, typeset, Constants & Predefined Variables (8:20)
- c- echo, print, and printf & Accepting Input with ksh, and bash (6:30)
- d- Arithmetic and Bitwise Operators and Floating-Point Numbers (7:32)
- e- Grouping Operations & Binary, Octal, and Hexadecimal (3:42)
- f- Indexed Arrays (4:29)
- g- Quoting and Command Substitution (3:17)
- Lecture PDF File for Session 5
- a- Conditional Expressions & Testing Strings (10:32)
- b- Testing Options and Numeric Conditions (16:15)
- c- Testing Completion Status (3:54)
- d- The case Statement (9:01)
- e- Loops: while and until (7:42)
- f- The for Loop (6:08)
- g- select Statement and Redirection and Loops (16:01)
- PDF File for Project 3
- Example 1. Line Count Script (8:18)
- Example 2. Running a loop in the background (5:25)
- Example 3. Testing whether a string is null (14:49)
- Example 4: Picking a random card from a deck (14:25)
- Example 5: Listing all users on the system (7:29)
- Example 6: Breaking out of multiple loop levels (6:19)
Kevin Downs- Red Hat Certified System Administrator
Kevin is Red Hat Certified System Administrator or RHCSA. At his current job, he is in charge of administering hundreds of servers running on different Linux distributions.
He works as Unix Systems Administrator supporting several large enterprise level clients with IBM across multiple environments.
As RHCSA, he is adept at Linux programming for managing both personal and server Linux systems.
He is pursuing Red Hat Certified System Engineer and DevOps.