Cademy logoCademy Marketplace

Course Images

Linux Shell Scripting: A Project-Based Approach to Learning

Linux Shell Scripting: A Project-Based Approach to Learning

  • 30 Day Money Back Guarantee
  • Completion Certificate
  • 24/7 Technical Support

Highlights

  • On-Demand course

  • 11 hours 10 minutes

  • All levels

Description

By the end of the course, you will learn to write your very own Linux shell scripts using the concepts in order to avoid repetitive work and save time.

Have you tried to learn shell scripting on your own, but lack the structure you need to really improve your skills? Are you tired of picking up bits and pieces of information that you can't just seem to put together? Do you learn best by doing? If so, you are going to love this course. A shell script is a computer program designed to be run by the Unix shell, a command-line interpreter. One of the biggest complaints from students is that most of the courses they have taken in the past simply provide information without any context and without any idea of how to put that information to use. This course turns that old, frustrating, and outdated way of learning on its head. It is project-based, which means that instead of learning bits and pieces of information, you will write actual shell scripts that you can use in real-world situations. You get the chance to immediately put what you learn to use so that you fully understand and remember it. By the end of this course, you will be able to write shell scripts that will allow you to work with Linux effectively. All resources and codefiles are placed here: https://github.com/packtpublishing/linux-shell-scripting-a-project-based-approach-to-learning

What You Will Learn

Learn about using the proper permissions on your shell scripts
Learn to create and use variables in your scripts
Learn to use shell built-in commands and operating system commands
Learn to write scripts that execute commands on other systems
Learn to use command pipelining
Learn how to control all types of input and output

Audience

This course is for anyone who wants to master Linux shell scripting, bash scripting, and the bash shell. This can also be taken by any Linux system administrators, developers, or programmers.

Approach

This course is project-based, which means that instead of learning bits and pieces of information, you will write actual shell scripts that you can use in real-world situations.

Key Features

Learn how to create a local Linux shell scripting environment * Learn about password generation and shell script arguments * Learn about parsing command-line operations

Github Repo

https://github.com/packtpublishing/linux-shell-scripting-a-project-based-approach-to-learning

About the Author

Jason Cannon

Jason Cannon is a professional system administrator, consultant, and author. He started his career as a Unix and Linux System engineer in 1999. Since that time, he has utilized his Linux skills at companies such as Xerox, UPS, Hewlett-Packard, and Amazon.com. Additionally, he has acted as a technical consultant and independent contractor for small businesses and Fortune 500 companies. Jason has professional experience with CentOS, RedHat Enterprise Linux, SUSE Linux Enterprise Server, and Ubuntu. He has used several Linux distributions on personal projects including Debian, Slackware, CrunchBang, and others. In addition to Linux, Jason has experience supporting proprietary Unix operating systems including AIX, HP-UX, and Solaris. He enjoys teaching others how to use and exploit the power of the Linux operating system.

Course Outline

1. Course Introduction

1. Introduction and Course Overview

This video introduces you to the course.

2. Course Downloads

This video introduces you to download the shell scripting class files that include solutions to the exercises.


2. Creating a Local Linux Shell Scripting Environment

1. Creating a Local Lab Environment Using Vagrant and VirtualBox - Background

This video explains how to create a local lab environment using Vagrant and VirtualBox.

2. Exercise 1 - Walkthrough - Part I - Windows Users Only

In this video, you'll learn how to install Vagrant and VirtualBox on Windows.

3. Exercise 1 - Walkthrough - Part I - Mac Users Only

This video introduces you to learn how to install Vagrant and VirtualBox on Mac.

4. Exercise 1 - Walkthrough - Part I - Linux (CentOS/RHEL) Users Only

This video introduces you to learn how to install Vagrant and VirtualBox on CentOS/RHEL.

5. Exercise 1 - Walkthrough - Part II - All Users

This video introduces you to all the users.

6. Vagrant and VirtualBox Troubleshooting Tips

If you encounter errors with Vagrant or Virtualbox, use the strategies in this lesson to fix these issues.


3. User and Account Creation - Shell Scripting Project 1

1. Section Introduction

This video introduces you to heap partitioning and objects promotion

2. Getting Started with Shell Scripting: Naming, Permissions, Variables, Built-Ins

This video introduces you to naming shell scripts and file extensions, comments and variables.

3. Special Variables, Pseudocode, Command Substitution, if Statement, Conditionals

This video introduces you to pseudocode and pseudocoding, command substitution, and if statement.

4. Exit Statuses, Return Codes, String Test Conditionals, More Special Variables

This video introduces you to exit status conventions, return codes, and string test conditionals.

5. Reading Standard Input, Creating Accounts, Username Conventions, More Quoting

This video introduces you to reading standard input, creating accounts, username conventions, and more quoting.

6. Exercise 2 - Walkthrough

The goal of this exercise is to create a shell script that adds users to the same Linux system as the script is executed on.


4. Password Generation and Shell Script Argument - Shell Scripting Project 2

1. Random Data, Cryptographic Hash Functions, Text and String Manipulation.

This video introduces you to generating random data, cryptographic hash functions, text and string manipulation.

2. Positional Parameters, Arguments, For Loops, Special Parameters

This video introduces you to positional parameters. ($0, $1, $2, $3, and so on).

3. The While Loop, Infinite Loops, Shifting, and Sleeping

This video introduces you to while loop, infinite loops, shifting, and sleeping.

4. Exercise 3 - Walkthrough

The goal of this video is to add users to the Linux system; it's a build-up of the previous exercise.


5. Linux Programming Conventions - Shell Scripting Project 3

1. Advanced Standard Input, Standard Output, and Standard Error - Part I

This video introduces you to a deeper look at standard input, standard output, and standard error, file descriptors, and so on.

2. Advanced Standard Input, Standard Output, and Standard Error - Part II

This video introduces you to redirecting standard output to a file and redirecting standard error to a file.

3. Exercise 4 - Walkthrough

This video introduces you to a script that is a continuation of the previous exercise walkthrough.


6. Parsing Command-Line Options - Shell Scripting Project 4

1. Case Statements

Learn how to use the case statement in your shell scripts.

2. Functions

This video introduces you to reasons to create functions, defining functions, and where to place functions in your script.

3. Parsing Command-Line Options with getopts, Part 1

This video shows you how to accept and parse command-line options.

4. Parsing Command-Line Options with getopts, Part 2

This video introduces you to learn how to use "getopts" in your shell scripts.

5. Deleting and Disabling Linux Accounts, Part 1 of 4 (Finding Files)

This video introduces you to deleting users with the userdel command.

6. Deleting and Disabling Linux Accounts, Part 2 of 4 (the userdel Command)

This video is a demonstration of the userdel and id commands.

7. Deleting and Disabling Linux Accounts, Part 3 of 4 (Archives with tar)

This video is a demonstration of the tar, gzip, and gunzip commands.

8. Deleting and Disabling Linux Accounts, Part 4 of 4 (Disabling Accounts)

This video is a demonstration of using the chage, passwd, and usermod commands.

9. Deleting Users - Exercise 5 - Walkthrough

This video introduces you to a script that will help us delete, disable, and archive users


7. Transforming Data / Data Processing / Reporting - Shell Scripting Project 5

1. Cut and Awk

In this lesson, you will learn how to use the cut and awk commands.

2. Cut and Awk Demonstration Script: Open Network Ports

This video is a demonstration of using the cut and awk commands.

3. Sort and Uniq

In this lesson, you will learn how to use the sort and uniq commands.

4. Parsing Log Files - Exercise 6 - Walkthrough

This video introduces you to learn the parsing of log files.

5. Sed

In this lesson, you will learn how to use sed.


8. Network Scripting and Automation of Distributed Systems: Shell Scripting Project 6

1. Configuring a Mini Network and Scripting for Remote Systems

In this lesson, you will learn how to create a small network of VMs that will simulate a company network. You'll also learn how to configure ssh key authentication and execute commands on remote systems over ssh.

2. Scripting Remote Commands - Walkthrough - Part 1

In this video, we will learn how to build a script based on the requirements.

3. Scripting Remote Commands - Walkthrough - Part 2

In this video, we will be testing the previously made script.


9. Course Summary

1. Summary

This video is a reminder of some shell scripting concepts and techniques you've learned during this course.


10. Course Extras

1. What Shell Scripting is and Why You Should Learn It

In this video, we will learn what a shell script is and how it can be helpful.

Course Content

  1. Linux Shell Scripting: A Project-Based Approach to Learning

About The Provider

Packt
Packt
Birmingham
Founded in 2004 in Birmingham, UK, Packt’s mission is to help the world put software to work in new ways, through the delivery of effective learning and i...
Read more about Packt

Tags

Reviews