altere ==
para -eq
:
#!/bin/sh
a=10
b=20
if [ 10 -eq 20 ]
then
echo "a is equal to b"
else
echo "a is not equal to b"
fi
BTW: Você definiu as variáveis a e b, mas não as está usando. Eu suponho que você pretendia:
#!/bin/sh
a=10
b=20
if [ $a -eq $b ]
then
echo "a is equal to b"
else
echo "a is not equal to b"
fi
Veja man test
para a aparência da expressão [ ]
. =
é para comparações de strings, -eq
, -gt
, etc. são para comparações de números inteiros.