AVG Duration2h


If you're looking to start writing your own shell scripts, this learning path is perfect for you. The skills you learn here will allow you to start writing your own scripts to solve real-world problems, and automate repetitive tasks. We'll take a look at the fundamentals of shell scripting, exit statuses and return codes, functions, wildcards, while loops, and much more!

As you move through the learning path, you'll learn how to create more advanced scripts, as well as learning how to carry out logging and debugging on your shell scripts. All the shell scripts used throughout this learning path, as well as some additional exercises, can be found here. The Downloads lecture gives an explanation of how these can be used.

Learning Objectives

  • Get started writing shell scripts, and learn why they are important and why you need one in every script you write
  • Create and use variables in your script and learn about testing and decision-making
  • Learn how to accept command line arguments with your script and how to process them
  • Learn how to accept input and write output as well as decision-making structures like if statements
  • Understand the importance of exit statuses and how to use them
  • Create and use functions in scripts
  • Understand how to use wildcards and how they work in conjunction with things like for loops
  • Learn how to simplify complex if statements by using case statements
  • Learn about logging and some easy ways you can implement logging inside your shell scripts
  • Learn some debugging tips as well as some common errors that people make when writing shell scripts and how to avoid them!

Intended Audience

This course is intended for anyone interested in shell scripting or shell programming.


To get the most out of this learning path, some knowledge of the command line would be useful.


If you have any feedback for us regarding this learning path, please reach out to support@cloudacademy.com.


Your certificate for this learning path

Training Content

Course - Beginner - 2m
Bash Scripting and Shell Programming — Introduction
This brief course provides an introduction to the Bash Scripting and Shell Programming learning path, outlining the content and explaining what you can expect to get out of it.
Course - Intermediate - 17m
Shell Scripting, Succinctly
This course covers the fundamentals of shell scripting.
Course - Intermediate - 15m
Using Exit Statuses and Return Codes in Your Scripts
In this course, you will learn how to use exit statuses and return codes in your scripts.
Course - Intermediate - 12m
Functions in Scripts
In this course, you'll learn how to create and use functions, and learn about the variables and parameters that apply to functions.
Course - Intermediate - 2m
Shell Script Checklist and Template
This course briefly covers the downloadable shell script checklist and template that comes with the learning path.
Course - Intermediate - 20m
Wildcards in Linux
This course will introduce you to wildcards and show you how to use them on the command line.
Course - Intermediate - 6m
Case Statements in Shell Scripts
In this brief course, you will learn how to use case statements in shell scripts.
Course - Intermediate - 8m
Logging in Shell Scripts
In this course, you will learn why you may want to use logging in your shell scripts.
Course - Intermediate - 12m
While Loops
A while loop is a loop that repeats a series of commands for as long as a given condition is true. In this course, you'll be introduced to them.
Course - Intermediate - 20m
Shell Script Debugging
In this lesson, you will learn about the options built into Bash that will help you find and fix errors in your shell scripts.
Course - Intermediate - 4m
Scripts used in this Learning Path
This brief course covers some of the scripts covered in the Bash Scripting and Shell Programming learning path.
Exam - 1h
Final Exam: Bash Scripting and Shell Programming
Final Exam: Bash Scripting and Shell Programming
About the Author
Learning paths7

Jason is the founder of the Linux Training Academy as well as the author of "Linux for Beginners" and "Command Line Kung Fu." He has over 20 years of professional Linux experience, having worked for industry leaders such as Hewlett-Packard, Xerox, UPS, FireEye, and Amazon.com. Nothing gives him more satisfaction than knowing he has helped thousands of IT professionals level up their careers through his many books and courses.

Covered Topics