2013-10-04 52 views
1

我正在写一个简单的shell脚本,并且出现一个关于“坏数字”的奇怪错误。这里是我的代码:Shell脚本编程:“坏数字”错误

status=0 
maxRetries=3 
retryCount=1 
while [[ status == 0 ]] || [[ retryCount -le maxRetries ]] 
do 
    .... 
    retryCount=$((retryCount+1)) 
done 

据我看到的,我已经正确声明maxRetries和RetryCount重为整数,所以我不明白为什么它抱怨while语句的约差多少。 任何人有想法?

回答

2

status,retryCountmaxRetries是字符串,而不是数字。您想要用$印章来扩展这些参数。或者,你可以使用算术表达式,它不需要sigil。

while ((status == 0 || retryCount < maxRetries)) 
+0

'status',也缺少'$' –

+0

好吧,现在它正在工作。这么简单...谢谢! –