In this HackerRank Comparing Numbers problem solution Comparisons in a shell script may either be accomplished using regular operators (such as <, > or =) or using the equivalent (-lt, -gt, -eq) for POSIX shells.
if statements take the form
if [[ condition ]]
then
do this
elif [[ condition ]]
then
do this instead
else
do this by default
fi
Note the spacing on the conditionals. There must be a space between the brackets and their contents, e.g.
if [[ $a < $b ]]
we have Given two integers, X and Y, identify whether X < Y or X > Y or X = Y.
Exactly one of the following lines:
– X is less than Y
– X is greater than Y
– X is equal to Y
Problem solution.
#!/bin/bash read x read y if [ $x -lt $y ]; then echo "X is less than Y" elif [ $x -gt $y ]; then echo "X is greater than Y" else echo "X is equal to Y" fi
Second solution.
#!/bin/bash read x read y if [ $x -lt $y ]; then echo "X is less than Y" elif [ $x -eq $y ]; then echo "X is equal to Y" else echo "X is greater than Y" fi