Linux命令定期运行脚本

发布于 2024-11-18 07:49:54 字数 396 浏览 3 评论 0原文

我有一个从 ubuntu 终端运行的命令,

python2.5 /home/me/web/gae/google_appengine/dev_appserver.py /home/me/web/gae/APPLICATION/trunk

我需要停止它的运行,然后每 10 秒重新启动它 - 如果需要,我可以从 .sh 文件运行它。

最好的方法是什么?如果可能的话,我希望所有这些都在一个脚本中,所以热衷于使用 cron 作业来运行它 - 当然有某种方法可以纯粹在 shell 脚本中进行带有延迟的循环?

我能想到的最接近的等价物是 JavaScript 的 setInterval(function(),10000);

I have this command that I run from a terminal in ubuntu

python2.5 /home/me/web/gae/google_appengine/dev_appserver.py /home/me/web/gae/APPLICATION/trunk

I need to stop this running and then restart it every 10 seconds - I can run this from a .sh file if necessary.

What would be the best way to do this? I'd like it to all be in one script if possible so not that keen on using cron jobs to run it - surely there is some way of doing a loop with a delay in purely in a shell script?

The closest equivalent I can think of is JavaScript's setInterval(function(),10000);

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

櫻之舞 2024-11-25 07:49:55

睡眠at 如果您不喜欢 cron

echo "print after 3min again"
sleep 180  # or sleep +3m
echo "hello again, 3min passed"

阅读手册页,使用这些,我认为围绕这​​些构建你想要的东西会很容易。

there is sleep and at if you don't like cron

echo "print after 3min again"
sleep 180  # or sleep +3m
echo "hello again, 3min passed"

Read the man pages, play with those a bit, and I think it'd be easy to build what you want, around those.

我的鱼塘能养鲲 2024-11-25 07:49:54

您可以尝试这样的操作:

while true; do
  python2.5 /home/me/web/gae/google_appengine/dev_appserver.py /home/me/web/gae/APPLICATION/trunk &
  sleep 10
  kill $!
done

即:永远循环(while true),在后台启动 python 脚本,等待 10 秒(sleep 10)并终止后台进程(杀死$!)。

You could try something like this:

while true; do
  python2.5 /home/me/web/gae/google_appengine/dev_appserver.py /home/me/web/gae/APPLICATION/trunk &
  sleep 10
  kill $!
done

I.e.: Loop forever (while true), start the python script in background, wait for 10 seconds (sleep 10) and kill the background process (kill $!).

要走就滚别墨迹 2024-11-25 07:49:54

我喜欢 ~$ watch -n sec 命令,

watch -n 10 ls /home/user/specialdata

watch -n 30 csync /dir/A /remote/dir/B

I like ~$ watch -n sec command

i.E.

watch -n 10 ls /home/user/specialdata

watch -n 30 csync /dir/A /remote/dir/B
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文