gpt4 book ai didi

bash - 如何在 shell 脚本中进行异步函数调用

转载 作者:行者123 更新时间:2023-11-29 09:05:30 35 4
gpt4 key购买 nike

我有一组要由 shell 脚本执行的 curl 命令。现在我想要的是所有这些命令必须以固定的时间间隔执行(每个 curl url 都不同)所以我想做的是异步调用

等待[秒]

针对不同的等待时间命令和执行不同的功能,例如

启动 5 个计时器,一个 120 秒,2 个 30 秒,3 个 3000 秒等。然后一旦它们完成,我想触发附加到每个超时的处理程序函数的执行。我可以在 javascript 和 nodejs 中轻松做到这一点,因为它们是事件驱动的编程语言。但我对 shell 脚本知之甚少。那么,我还能如何实现这个或 hotto 在 shell 脚本中进行此类异步调用?我不知道我是否足够清楚,如果我不够清楚,我还应该提到哪些其他细节?

最佳答案

可以尝试的东西:

delayed_ajax() {
local url=$1
local callback=$2
local seconds=$3

sleep $seconds
curl -s "$url" | "$callback"
}

my_handler() {
# Read from stdin and do something.
# E.g. just append to a file:
cat >> /tmp/some_file.txt
}

for delay in 120 30 30 3000 3000; do
delayed_ajax http://www.example.com/api/something my_handler $delay &
done

关于bash - 如何在 shell 脚本中进行异步函数调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24118224/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com