我在bash中有一个小片段
retries = 3
for (( i=0; i<retries; i++)); do
curl -1 --cipher ALL --connect-timeout 90 -T $zip_name ftps://ftp.box.com/Backup/$zip_name --user service.box.kto@crab.com:§fHyFSDF$o6
[[ $? -eq 0 ]] && break
echo "something went wrong, let's wait 6 seconds and retry"
sleep 6
done
[[ $retries -eq i ]] && { echo "This email is a notification of Failure" | mail -s "Failed" "admin.box@text.com" ; exit 1; }
如果卷曲时出现错误,上面的循环应该重试3次,所以如果出现卷曲错误,它应该邮寄到电子邮件中。但为了测试它我撤销了用户的访问权限,所以我期待一封电子邮件,但这不起作用,我在控制台上收到了以下内容:
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- 0:00:03 --:--:-- 0
curl: (9) Server denied you to change to the given directory
如果在上传服务器时撤销访问,为什么代码会在第一次尝试时中断
答案 0 :(得分:0)
footer{
width:100%;
float:left;
}
你最好不要使用我认为的语法,而且我注意到你没有正确引用重试变量。即使用$ retries而不是重试和$ i而不是i