Linux shell中字符串的比较
我想在shell中完成如下的动作:VAR1=abcd VAR2=ef,那么按照c语言 VAR2大于VAR1了,可是我看到shell中好象只能检测这两个字符串是否匹配 而不能比较大小啊好像是不能比较大小。如果用变通的方式呢,似乎可考虑用sort等命令来组合。麻烦点儿。if [ $VAR1 = `echo "$VAR1 $VAR2"|sort|head -1` ]thenecho "VAR1 is l
·
我想在shell中完成如下的动作:VAR1=abcd VAR2=ef,那么按照c语言 VAR2大于VAR1了,
可是我看到shell中好象只能检测这两个字符串是否匹配 而不能比较大小啊
好像是不能比较大小。如果用变通的方式呢,似乎可考虑用sort等命令来组合。麻烦点儿。
if [ $VAR1 = `echo "$VAR1 $VAR2"|sort|head -1` ]
then
echo "VAR1 is little than VAR2"
else
echo "VAR1 is greater that VAR2"
fi
实际上是利用了sort的排序功能,高,sort可以照字典序排列,通常和ascii值是一致.
同时还可以使用 expr .如下所示:
expr $var1 > $var2 > /dev/null
更多推荐
已为社区贡献2条内容
所有评论(0)