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

HackerRank Comparing Numbers problem solution


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