Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
比较bash中的变量_Bash_Variables_Compare - Fatal编程技术网

比较bash中的变量

比较bash中的变量,bash,variables,compare,Bash,Variables,Compare,我有这个密码。但是我不能得到我需要的结果。 我正在比较bash中的变量。 如果我从一个网页上得到的数字大于40,我想要一个是 var2=40 maj=$(curl $1) var1=$(echo "$maj" | grep "[0-9]" | awk '{print $3}') echo $var1 if [[ "$var1" > "$var2" ]]; then echo "yes" else echo "no" fi 1美元可以是: http://pastebin.com/raw.p

我有这个密码。但是我不能得到我需要的结果。 我正在比较bash中的变量。 如果我从一个网页上得到的数字大于40,我想要一个是

var2=40
maj=$(curl $1)
var1=$(echo "$maj" | grep "[0-9]" | awk '{print $3}')
echo $var1
if [[ "$var1" > "$var2" ]]; then
echo "yes"
else
echo "no"
fi
1美元可以是:

http://pastebin.com/raw.php?i=heH8s5yy
http://pastebin.com/raw.php?i=k5dkKUu1
http://pastebin.com/raw.php?i=59V0eJmz
问题是当我这样做的时候

./test.sh http://pastebin.com/raw.php?i=k5dkKUu1
我明白了,是的


而5小于40,这是因为双括号内的
符号
[…]]
进行词典比较。您需要使用
-gt
运算符来比较数值,如下所示:

[[ $var1 -gt "$var2" ]]
在双圆括号内执行数字操作更好,如下所示

if (( var1 > var2 ))

这是因为双括号内的
符号
[…]]
进行词典比较。您需要使用
-gt
运算符来比较数值,如下所示:

[[ $var1 -gt "$var2" ]]
在双圆括号内执行数字操作更好,如下所示

if (( var1 > var2 ))