【发布时间】:2020-08-01 22:10:17
【问题描述】:
在编写 shell 脚本时,我反复需要等待给定条件变为真,例如远程 URL 可用(使用 curl 检查)或应该存在的文件等。
理想情况下,我想要一个函数或脚本 await 以便我可以编写,例如,
await [[ some condition ]]
它会每秒检查一次条件,直到它变为真或发生超时。理想情况下,我可以设置轮询间隔和超时。
有没有这样的工具?
【问题讨论】:
-
await() {until "$@" ; do sleep 1 ; done }怎么样?until将把提供的参数作为带参数的命令执行,直到命令返回 true(如果返回 false,它将重试)。祝你好运。