A Practical Guide to Linux Commands, Editors, and Shell Programming

Everything you need to know about the Linux environment for confidently scripting Linux shell programming.

(LINUX-SHELL-PROG.AP1) / ISBN : 978-1-64459-440-7
Lessons
Lab
TestPrep
AI Tutor (Add-on)
Get A Free Trial

About This Course

A practical guide to Linux Commands, Editors, and Shell Programming course is a comprehensive training that covers the Linux fundamentals to equip you with the skills needed to master this administration system. Learn how to execute commands, master text editing techniques, and create efficient shell scripts. Develop a deep understanding of the Linux command-line interface with expertise in essential commands for file and directory management, text processing, and information retrieval. Discover advanced text editing techniques using the most popular text editors like vi/vim, nano, and emacs. Explore the latest shell scripting techniques and best practices for task automation and system administration. Make the best of our interactive features like hands-on-labs, quizzes, video tutorials and the AI Tutor (on demand) to solidify your knowledge. By the end of the best Linux commands course online, you’ll be confidently handling this ecosystem while having a competitive edge in your career.

Skills You’ll Get

  • Deep understanding of the Linux shell environment and its syntax
  • Mastering Linux commands for manipulation, text processing, and data extraction
  • Efficiency in file creation, modification, and navigation using the text editor
  • Writing and executing Linux shell scripting
  • Knowledge of file permissions and ownership commands
  • Pattern matching and text manipulation with ‘regular expressions’ 
  • Identify and resolve Linux-related problems
  • Exposure to user management, package installation, and system configuration

1

Introduction

  • Features of This Course
  • Contents
  • Supplements
2

Welcome to Linux and macOS

  • The History of UNIX and GNU–Linux
  • What Is So Good About Linux?
  • Overview of Linux
  • Additional Features of Linux
  • Lesson Summary
  • Exercises
3

Getting Started

  • Conventions Used in This Course
  • Logging In from a Terminal (Emulator)
  • Working from the Command Line
  • su/sudo: Curbing Your Power (root Privileges)
  • Where to Find Documentation
  • More About Logging In and Passwords
  • Lesson Summary
  • Exercises
4

The Utilities

  • Special Characters
  • Basic Utilities
  • Working with Files
  • | (Pipeline): Communicates Between Processes
  • Four More Utilities
  • Compressing and Archiving Files
  • Locating Utilities
  • Displaying User and System Information
  • Communicating with Other Users
  • Email
  • Lesson Summary
  • Exercises
5

The Filesystem

  • The Hierarchical Filesystem
  • Directory Files and Ordinary Files
  • Pathnames
  • Working with Directories
  • Access Permissions
  • ACLs: Access Control Lists
  • Links
  • Lesson Summary
  • Exercises
6

The Shell

  • Special Characters
  • Ordinary Files and Directory Files
  • The Command Line
  • Standard Input and Standard Output
  • Running a Command in the Background
  • Filename Generation/Pathname Expansion
  • Builtins
  • Lesson Summary
  • Exercises
7

The vim Editor

  • History
  • Tutorial: Using vim to Create and Edit a File
  • Introduction to vim Features
  • Command Mode: Moving the Cursor
  • Input Mode
  • Command Mode: Deleting and Changing Text
  • Searching and Substituting
  • Miscellaneous Commands
  • Copying, Moving, and Deleting Text
  • Reading and Writing Files
  • Setting Parameters
  • Advanced Editing Techniques
  • Units of Measure
  • Lesson Summary
  • Exercises
8

The emacs Editor

  • History
  • Tutorial: Getting Started with emacs
  • Basic Editing Commands
  • Online Help
  • Advanced Editing
  • Major Modes: Language-Sensitive Editing
  • More Information
  • Lesson Summary
  • Exercises
9

The Bourne Again Shell (bash)

  • Background
  • Startup Files
  • Commands That Are Symbols
  • Redirecting Standard Error
  • Writing and Executing a Simple Shell Script
  • Control Operators: Separate and Group Commands
  • Job Control
  • Manipulating the Directory Stack
  • Parameters and Variables
  • Special Characters
  • Locale
  • Time
  • Processes
  • History
  • Aliases
  • Functions
  • Controlling bash: Features and Options
  • Processing the Command Line
  • Lesson Summary
  • Exercises
10

The TC Shell (tcsh)

  • Shell Scripts
  • Entering and Leaving the TC Shell
  • Features Common to the Bourne Again and TC Shells
  • Redirecting Standard Error
  • Working with the Command Line
  • Variables
  • Control Structures
  • Builtins
  • Lesson Summary
  • Exercises
11

Programming the Bourne Again Shell (bash)

  • Control Structures
  • File Descriptors
  • Parameters
  • Variables
  • Builtin Commands
  • Expressions
  • Implicit Command-Line Continuation
  • Shell Programs
  • Lesson Summary
  • Exercises
12

The Perl Scripting Language

  • Introduction to Perl
  • Variables
  • Control Structures
  • Working with Files
  • Sort
  • Subroutines
  • Regular Expressions
  • CPAN Modules
  • Examples
  • Lesson Summary
  • Exercises
13

The Python Programming Language

  • Introduction
  • Scalar Variables, Lists, and Dictionaries
  • Control Structures
  • Reading from and Writing to Files
  • Regular Expressions
  • Defining a Function
  • Using Libraries
  • Lesson Summary
  • Exercises
14

The MariaDB SQL Database Management System

  • History
  • Notes
  • Installing a MariaDB Server and Client
  • Client Options
  • Setting Up MariaDB
  • Creating a Database
  • Adding a User
  • Examples
  • Lesson Summary
  • Exercises
15

The AWK Pattern Processing Language

  • Syntax
  • Arguments
  • Options
  • Notes
  • Language Basics
  • Examples
  • Lesson Summary
  • Exercises
16

The sed Editor

  • Syntax
  • Arguments
  • Options
  • Editor Basics
  • Examples
  • Lesson Summary
  • Exercises
17

The rsync Secure Copy Utility

  • Syntax
  • Arguments
  • Options
  • Examples
  • Lesson Summary
  • Exercises
18

The OpenSSH Secure Communication Utilities

  • Introduction to OpenSSH
  • Running the ssh, scp, and sftp OpenSSH Clients
  • Setting Up an OpenSSH Server (sshd)
  • Troubleshooting
  • Tunneling/Port Forwarding
  • Lesson Summary
  • Exercises
19

Command Reference

  • Utilities That Display and Manipulate Files
  • Network Utilities
  • Utilities That Display and Alter Status
  • Utilities That Are Programming Tools
  • Miscellaneous Utilities
  • Standard Multiplicative Suffixes
  • Common Options
  • The sample Utility
A

Appendix A: Regular Expressions

  • Characters
  • Delimiters
  • Simple Strings
  • Special Characters
  • Rules
  • Bracketing Expressions
  • The Replacement String
  • Extended Regular Expressions
  • Appendix Summary
B

Appendix B: Help

  • Solving a Problem
  • Finding Linux and macOS Related Information
  • Specifying a Terminal
C

Appendix C: Keeping the System Up-to-Date

  • Using dnf
  • Using apt-get
  • BitTorrent
D

Appendix D: macOS Notes

  • Open Directory
  • Filesystems
  • Extended Attributes
  • Activating The Terminal META Key
  • Startup Files
  • Remote Logins
  • Many Utilities Do Not Respect Apple Human Interface Guidelines
  • Installing Xcode and MacPorts
  • macOS Implementation of Linux Features

1

Getting Started

  • Using the man, apropros, and whatis Utilities
  • Changing the User's Password
2

The Utilities

  • Using Basic Linux Utilities
  • Working with Files
  • Using echo, date, script, and unix2dos Utilities
  • Using the tar Command in Linux
  • Compressing and Decompressing a File
  • Locating Utilities in Linux
  • Displaying User and System Information
3

The Filesystem

  • Working with Directories
  • Changing and Displaying Permission
  • Using ACL in Linux
  • Dereferencing Symbolic Links Using chgrp
  • Removing a Link
  • Creating a Symbolic Link
  • Creating a Hard Link
4

The Shell

  • Using the noclobber and pipeline Features
  • Redirecting Standard Input/Output
  • Using the cat Utility
  • Running a Job
5

The vim Editor

  • Using vim to Create and Edit a File
6

The Bourne Again Shell (bash)

  • Writing and Executing a Simple Shell Script
  • Using Control Operators in Linux
  • Manipulating the Directory Stack
  • Assigning Attributes to Variables Using the declare Builtin
  • Declaring and Initializing a Variable for a Script
  • Displaying Locale Information
  • Working with Timezones
  • Managing Processes in Linux
  • Using the history Command
  • Using Aliases
  • Creating a Function
  • Using Command-Line Expansion
7

The TC Shell (tcsh)

  • Entering and Leaving the TC Shell
  • Creating and Running a Perl Program
8

Programming the Bourne Again Shell (bash)

  • Using Builtin Commands in Linux
9

The Perl Scripting Language

  • Using Variable in Perl
  • Control Structures in Perl
  • Using Sort
  • Using Subroutines
  • Using Regular Expression
10

The Python Programming Language

  • Using Python Builtin Data Types
  • Working with Regular Expression in Python
  • Using Python Libraries
11

The MariaDB SQL Database Management System

  • Installing a MariaDB Server and Client
  • Setting Up MariaDB
  • Creating a Database and Adding a User to It
12

The AWK Pattern Processing Language

  • Using the gawk Utility
13

The sed Editor

  • Using the sed Utility
14

The rsync Secure Copy Utility

  • Using the rsync Utility

Any questions?
Check out the FAQs

Still have unanswered questions and need to get in touch?

Contact Us Now

The main focus is to provide a strong foundation of Linux-command concepts. This primarily includes learning the skills for executing essential commands, using text editing tools, and crafting effective shell scripting.

Whether you are a beginner looking to grasp the fundamentals with linux practice exercises, or a seasoned professional wanting to upgrade your tech skills, this training course serves as a comprehensive guide to learning Linux shell programming.

YES. Learning Linux commands boosts your career prospects and opens doors to new opportunities. At uCertify, all our courses are loaded with numerous benefits like access to expert instructors, hand-on-Labs, and interactive features that enhance your overall learning experience. Plus, you have the flexibility to learn from anywhere anytime.

You’ll get instant access to all the study material as soon as you enroll for a uCertify course. In most cases, you will have access to the course materials up to 1 year after completing the course.

A strong Linux foundation is an important starting point and it opens doors to a variety of IT roles like Linux System Administrator, DevOps Engineer, Cloud Engineer, System Programmer, Network Engineer, Security  Engineer, Data Analyst or Tech Support.

Related Courses

All Course
scroll to top