使用if语句比较bash脚本中的变量

时间:2013-03-06 13:48:43

标签: bash shell scripting

所以我对bash脚本很新,但到目前为止tldp.org一直是个好朋友。无论如何,我已经混淆了自己,并且发誓要在澄清方面寻求帮助:我宣布一个像这样的变量     MAXseeds = -1;     总和= 0 我在我的脚本中做了很多事情并获得sumS的新值,这是一个整数值。然后我想比较MAXseeds和sumS,如果sumS更大,则MAXseeds等于sumS。我是这样做的:

  echo $MAXseeds      
  echo $sumS    
  if [ $MAXseeds -lt $sumS ];
  then 
     MAXseeds = $sumS
     best_file=$COUNT
  fi 
  echo $MAXseeds

根据我的判断,这应该可行,但是在运行这段脚本时我得到的终端输出是

  -1
  492
  lookup.sh: line 34: MAXseeds: command not found
  -1

基本上我想知道我在这里做错了什么?为什么它没有找到命令响应?任何解释为什么这是不正确的将非常感激。

1 个答案:

答案 0 :(得分:2)

试试这个:

if [ $MAXseeds -lt $sumS ];
then 
  MAXseeds=$sumS
  best_file=$COUNT
fi 

没有#34; ="。

周围的空格

如果在" MAXseeds"之后放置一个空格,那么它将被解释为一个命令。当然,它不是命令,因此您会收到错误消息。