Creating Simple Shell Scripts

30 minutes
  • 2 Learning Objectives

About this Hands-on Lab

Shell scripts are an important tool in a system administrator’s toolbox. Whether you use them for automation, reporting, or just ad-hoc to process large volumes of repetitive work, it’s important to have an understanding of how to make scripts work for you. In this hands-on lab, we will take a look at shell scripts, including basic concepts.

**Red Hat Exam Requirements Covered:**
– Conditionally executing code (use of: if, test, [], etc.)
– Using looping constructs (for, etc.) to process file command-line input
– Processing script inputs ($1, $2, etc.)
– Processing output of shell commands within a script
– Processing shell command exit codes

Learning Objectives

Successfully complete this lab by achieving the following learning objectives:

Create a Script to Add Users in Batches of 1 or More at a Time
  • Add a user by hand — and realize how much work it is!
  • Create a script that will add users in a batch from an input file.
  • Test if the script works and if the desired results occur.
  • Add another key step to the user creation process to save more time.
Create a User Deletion Script
  • Realize you’ll be deleting batches of users too!
  • Copy the create_users.sh script, and make the changes.
  • Delete the recently added users.

Additional Resources

In this lab, you're a system administrator who is tasked with adding a large number of users — not all at once, but over time — just enough to be really irritating to do by hand one at a tiime.

First, you'll create a script that you can use to add batches of users by adding them to a support file and then running the script. You'll then check the exit code to see what the result was, and then confirm the addition of the users in the various user-related files.

Next, you'll get really tired of having to set the user's passwords by hand — one by one — so you'll update the script to also set a default password for the users that are being created.

Finally, you'll realize that you'll have some reasonable turnover, so you'll apply the same logic as in the create_user script to make a delete_user script and delete your outgoing people in batches.


Log in to the server using the credentials provided:

ssh cloud_user@<PUBLIC_IP_ADDRESS>

Become the root user:

sudo -i

What are Hands-on Labs

Hands-on Labs are real environments created by industry experts to help you learn. These environments help you gain knowledge and experience, practice without compromising your system, test without risk, destroy without fear, and let you learn from your mistakes. Hands-on Labs: practice your skills before delivering in the real world.

Sign In
Welcome Back!

Psst…this one if you’ve been moved to ACG!

Get Started
Who’s going to be learning?