【发布时间】:2025-12-30 11:40:17
【问题描述】:
我有一个脚本,我想在 Linux 主机启动时执行,但它取决于在另一台主机上运行的 influxdb。由于两台主机几乎同时出现,我需要先启动 influxdb,然后才能运行我的脚本,否则脚本将失败。
我在想它应该是一个 bash 脚本,它首先使用 curl 检查端口是否可用。如果是,请继续。如果不是,则休眠 30 秒,然后重试,以此类推。
到目前为止,我有正确的逻辑来检查 influxdb 是否已启动,但我不知道如何将其合并到 bash 脚本中。
if
curl --head --silent --fail http://tick.home:8086/ping 1> /dev/null
then echo "1"
else echo "0"
fi
如果结果为 1,则继续执行脚本。如果结果为 0,则休眠 30 秒,然后再次尝试 if 语句。最好的方法是什么?
【问题讨论】: