Comparar números en Shell Script

Como en cualquier otro lenguaje de programación, en Shell Script podemos comparar si dos números son iguales, si uno es mayor que otro… pero con una ligera diferencia. En lugar de los símbolos ==, <, >… se utilizan abreviaturas:

-eq: compara si los dos números son iguales
-ne: compara si los dos números son distintos
-gt: compara si el primer número es mayor que el segundo
-ge: compara si el primer número es mayor o igual que el segundo
-lt: compara si el segundo número es menor que el segundo
-le: compara si el segundo número es menor o igual que el segundo

Para comprobar su uso, vamos a ver un script que genere dos números aleatorios y que los compare:

#!/bin/bash

num1=$(shuf -i 1-10 -n 1)
num2=$(shuf -i 1-10 -n 1)

if [ $num1 -eq $num2 ]
then
    echo $num1 y $num2 son iguales
fi

if [ $num1 -ne $num2 ]
then
    echo $num1 y $num2 no son iguales
fi

if [ $num1 -gt $num2 ]
then
    echo $num1 es mayor que $num2
fi

if [ $num1 -ge $num2 ]
then
    echo $num1 es mayor o igual que $num2
fi

if [ $num1 -lt $num2 ]
then
    echo $num1 es menor que $num2
fi

if [ $num1 -le $num2 ]
then
    echo $num1 es menor o igual que $num2
fi

 

 

Deja una respuesta

Tu dirección de correo electrónico no será publicada.