Compare two string variables using if statement in Bash
In this tutorial, we are going to learn about how to compare two string variables using if statement in Bash with the help of exmaples.
Consider, we have the following two string variables in our bash script:
str1="Hello"
str2="Welcome"
To compare a two string variables in bash, we can use the if
statement with the double equals comparison operator (==
).
The double equals operator returns true
, if the variable 1 and variable 2 are equal otherwise it returns false
.
Here is an example:
str1="Hello"
str2="Welcome"
# Equality Comparison
if [ "$str1" == "$str2" ]; then
echo "Two variables are same"
else
echo "Two variables are not same"
fi
Output:
Two variables are not same
Note: The spaces are important inside square brackets [ "$str1" == "$str2" ]
In the above example , the variable 1 and variable 2 is different. So, it prints the output Two variables are not same
.
Checking for string inequality
We can check if a variable 1 string is not equal to variable 2 string by using the !=
operator in Bash.
!=
is also called as not equality operator.
Where !=
operator returns true when variable 1 is not equal to variable 2 or vice versa. if both are equal it return false.
Here is an example:
str1="Hello"
str2="Welcome"
# Equality Comparison
if [ "$str1" != "$str2" ]; then
echo "Two variables are not same"
else
echo "Two variables are same"
fi