我想不断下载链接直到下载成功,
#!/bin/bash
while [ some_condition ]; do
curl my_url
# or
vagrant add my_vagrant_url --name localdev --force
done
检测下载流是否没有异常断开的正确方法是什么?
答案1
while ! curl my_url; do sleep 0.1; done
如果出现错误,curl 会以非零退出代码退出。
需要理解的重要一点是,在 shell 中,形式的条件[ ... ]
并不是一种特殊的语言结构。[
是一个命令,其余的]
都是它的参数。您可以使用任何命令来代替该[
命令,因为每个命令都有一个退出状态,并且如果该退出状态为零,则条件将评估为 true。