2012-01-30 208 views
0

我试图运行此代码。基本上我想https://admin:[email protected]“‘$ DMP’”:7777/set_param'“$ PARAMS 命令,为阵列的每个IP运行3次,但是我越来越喜欢在Bash调试中需要帮助

prog.sh: line 7: syntax error near unexpected token `while' 
prog.sh: line 7: `while [ $n -lt 3 ]; do' 

错误可以请别人纠正代码?

#!/bin/bash 

n="0" 
dmps=(10.104.164.104 10.35.176.77 10.35.176.126) # ***** put your dmp ips here ******* 

for dmp in ${dmps[@]}; 
while [ $n -lt 3 ]; do 


    do res=$(curl -k -s --url 'https://admin:[email protected]'"$dmp"':7777/set_param?'"$params"); 
    echo "DMP: $dmp - $res"; 
n=$[n+1] 
done 

done 

回答

4
  • 加之前[
  • 空间添加; do]

    while [ n -lt 3 ]; do 
    

read more

+0

喜千电子伏,其实我在原来的职位编辑的代码。这就是我想要的。 BUt在那个我得到错误,像prog.sh:第7行:语法错误附近意想不到的标记'而' prog.sh:第7行:'while [$ n -lt 3];做' – mac 2012-01-30 13:56:40

+0

** **之后,你有两个'做'。你应该[阅读更多](http://www.gnu.org/software/bash/manual/bash.html#Looping-Constructs)来修复语法错误。 – kev 2012-01-30 14:38:01

+0

您在'for'中仍然缺少'do'。正确的语法是'var for list ...; **做东西; done' – tripleee 2012-01-30 16:39:28