1

我正在编写一个简单的 shell 脚本,但我遇到了一个关于“错误号码”的奇怪错误。这是我的代码:

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

据我所知,我已经正确地将 maxRetries 和 retryCount 声明为整数,所以我不明白为什么它会在 while 语句中抱怨错误的数字。有人有想法吗?

4

1 回答 1

2

status,retryCount并且maxRetries是字符串,而不是数字。您想使用$印记扩展这些参数。或者,您可以使用不需要印记的算术表达式。

while (( status == 0 || retryCount < maxRetries ))
于 2013-10-04T00:41:52.077 回答