进行shell脚本实验的时候,发现了一个问题:
"-It" 等价于 "<" ??
"-gt" 等价于 ">" ??
"-eq" 等价于 "=" ??
请看下面实验1:
#!/bin/sh
a=$1
b=$2
if [ -z $a ]||[ -z $b ]
then
echo "please enter 2 number..."
exit 1
fi
if [ $a = $b ]
then
echo "number a = number b"
else if [ $a -lt $b ]
then
echo "number a<number b"
else if [ $a -gt $b ]
then
echo "number a>number b"
fi
fi
fi
结果:
[root@localhost shell实验]# ./fi 2 3
number a<number b
[root@localhost shell实验]# ./fi 3 2
number a>number b
[root@localhost shell实验]# ./fi 3 3
number a = number b
实验2:
#!/bin/sh
a=$1
b=$2
if [ -z $a ]||[ -z $b ]
then
echo "please enter 2 number..."
exit 1
fi
if [ $a = $b ]
then
echo "number a = number b"
else if [ $a < $b ]
then
echo "number a<number b"
else if [ $a > $b ]
then
echo "number a>number b"
fi
fi
fi
结果:
[root@localhost shell实验]# ./fi 2 3
number a<number b
[root@localhost shell实验]# ./fi 3 2
number a<number b
[root@localhost shell实验]# ./fi 3 3
number a = number b
结论:
"-It" 等价于 "<" ??
"-gt" 等价于 ">" ??
"-eq" 等价于 "=" ??
他们不是等价的,但是什么原因还真的不懂,也许是语法的规定,恳请高手指点......