The if else statement is one of the most important concepts in Bash scripting. It allows a Bash script to make decisions based on conditions. For example, you can check if a file exists, if a user entered the correct password, if a number is greater than another number, or if a command was successful.
If you are learning Bash scripting in Linux, understanding if else conditions is necessary. It is widely used in automation scripts, system administration tasks, cybersecurity checks, backup scripts, and log monitoring.
An if else statement checks a condition. If the condition is true, one block of commands runs. If the condition is false, another block of commands runs.
Basic syntax:
if [[ condition ]]; then commandelse commandfi
In Bash, every if statement must end with fi.
Create a new Bash script:
nano if-else.sh
Add the following code:
#!/bin/bashage=18if [[ $age -ge 18 ]]; then echo "You are eligible"else echo "You are not eligible"fi
Save the file and run it:
chmod +x if-else.sh./if-else.sh
Output:
You are eligible
Here, -ge means greater than or equal to.
You can also use if else with user input.
#!/bin/bashread -p "Enter your username: " usernameif [[ "$username" == "admin" ]]; then echo "Welcome admin"else echo "Access denied"fi
This script checks whether the entered username is admin.
File checking is a common use case in Bash scripting.
#!/bin/bashfile="/etc/passwd"if [[ -f "$file" ]]; then echo "File exists"else echo "File does not exist"fi
The -f operator checks whether the given path is a regular file.
When you need to check multiple conditions, use elif.
#!/bin/bashmarks=75if [[ $marks -ge 90 ]]; then echo "Grade A"elif [[ $marks -ge 60 ]]; then echo "Grade B"else echo "Grade C"fi
The script checks each condition one by one and runs the matching block.
The if else statement is used to make decisions in scripts. It helps your script respond differently based on conditions such as numbers, strings, files, directories, and user input.
For beginners, learning if else is an important step in Bash scripting. Once you understand it, you can create smarter Linux automation scripts for system checks, cybersecurity tasks, file validation, and user input handling.
Both git fetch and git pull talk to a remote repository, but they do very different things to your…
Sometimes the change you need already exists, just on the wrong branch. A hotfix lands…
Email is still one of the most important communication channels inside modern applications. Password resets,…
Nginx is a high-performance web server and reverse proxy trusted by some of the largest…
ufw (Uncomplicated Firewall) sits on top of iptables (or nftables on newer systems) and replaces…
When you share a server with a team or investigate unexpected activity, the first question…