Swiftorial Logo
Home
Swift Lessons
Matchups
CodeSnaps
Tutorials
Career
Resources

Shell Scripting Basics

Introduction

Shell scripting is a powerful way to automate tasks in a Unix/Linux environment. A shell script is a text file containing a sequence of commands for a Unix-based operating system. In this tutorial, we'll cover the basics of shell scripting, including script structure, variables, conditionals, loops, and functions.

Creating and Running a Shell Script

To create a shell script, you can use any text editor (like vi, nano, or even a graphical editor). Save the file with a .sh extension. To run the script, you need to make it executable and then execute it.

Create a file named myscript.sh:

$ nano myscript.sh

Add the following content to the file:

#!/bin/bash
echo "Hello, World!"

Save the file and make it executable:

$ chmod +x myscript.sh

Run the script:

$ ./myscript.sh
Hello, World!

Variables

Variables in shell scripting are used to store and manipulate data. You can create a variable by assigning a value to it without spaces around the equal sign.

Example:

#!/bin/bash
my_variable="Hello, World!"
echo $my_variable

Output:

Hello, World!

Conditionals

Conditionals in shell scripting allow you to execute commands based on certain conditions. The most common conditional statements are if, else, and elif.

Example:

#!/bin/bash
num=10
if [ $num -gt 5 ]; then
    echo "The number is greater than 5"
else
    echo "The number is 5 or less"
fi

Output:

The number is greater than 5

Loops

Loops are used to repeat a set of commands multiple times. The most common loops in shell scripting are for, while, and until.

Example of a for loop:

#!/bin/bash
for i in 1 2 3 4 5
do
    echo "Number: $i"
done

Output:

Number: 1
Number: 2
Number: 3
Number: 4
Number: 5

Functions

Functions in shell scripting allow you to group commands into a single entity. Functions make scripts more modular and easier to maintain.

Example:

#!/bin/bash
greet() {
    echo "Hello, $1"
}

greet "Alice"
greet "Bob"

Output:

Hello, Alice
Hello, Bob

Conclusion

In this tutorial, we've covered the basics of shell scripting in a Unix/Linux environment. You should now have a good understanding of how to create and run shell scripts, use variables, implement conditionals, create loops, and define functions. With these basics, you can start automating tasks and writing more complex scripts to enhance your productivity.