如何以非常短的间隔定期运行命令并获得返回?

如何以非常短的间隔定期运行命令并获得返回?

我需要以大约 5 秒的间隔调用特定命令。我将如何设置在后台运行的守护进程/进程或类似的东西?我查看了cronjobs,但最小间隔似乎是1分钟。任何建议表示赞赏;)

Fedora 是一个系统。

编辑命令将是一个bash脚本,所以我认为“watch”不会这样做。

答案1

为什么你认为“观看”不起作用?

$ cat periodic.sh
#!/bin/bash
echo $(date)
$ chmod +x periodic.sh

$ watch -n 5 ./periodic.sh

答案2

(
  while true
  do
    your-command-here
    sleep 5
  done
) &
disown

答案3

也许用nohup?它的设计目的是让作业在 shell 关闭后运行。

您还可以使用屏幕。

答案4

watch命令适合您的情况,我将使用终端多路复用器(例如 tmux、screen 等),然后使用运行命令

watch -n 5 ./script.sh

在这种情况下,即使您关闭与计算机的终端或 ssh 连接,脚本仍然会运行。

此方法的唯一限制是,仅当脚本在该时间间隔内完成执行时,脚本才会每 5 秒运行一次。

相关内容