Cron不可用,请改用?

我运行一些脚本从数据库中提取数据的几个服务器帐户有非常有限的工具可用,其中有些是不允许的(即使通过正式的请求)使用cron,比你说的,你能推荐任何工具可以用来安排脚本的执行(就像cron一样)?

提前致谢 :)

更新1:是的,我指的服务器是Linux,HP-Ux和Solaris,Bash> 3.x可用。

如果允许您使用Cron从服务器进行SSH,则可以远程启动定期作业。

如何在一个无休止的循环与最后的睡眠一个后台,无脚本的脚本?

例:

$ cat runme.sh #!/bin/bash while true; do echo "Do useful stuff here" sleep 86400 done $ nohup ./runme.sh & 

这将打印一天一次“在这里做有用的东西”。

ktower的build议将会起作用,我想不出一个更好的办法,但是如果你有一个真正的select,那就不是你要select的解决scheme。 我可以提出最好的build议,将它移交给提供所需工具和设施的主机。 解决方法通常会导致比解决问题更多的问题。 有了如此多的托pipe服务提供商的select,真的没有理由解决一个临时解决scheme。

你可以使用调度程序吗?

添加到ktower答案。 如果你必须走这条路线,而且你需要更频繁的间隔(即每5分钟运行一次),你会看到一些时间漂移。 为了最大限度地减less你可以使用像(假设你正在使用Linux)

 sleep $((60 - `date +%s` % 60)) 

其中'60'是你想等待的秒数。

正如约翰G.指出,赢得这场比赛的方式是不玩, 即在允许at / cron的服务器上运行你的作业。 在列出的解决方法中,运行cron / Task Scheduler从单独的服务器启动SSH命令的想法可能是最好的,假设您具有SSH访问权限。 (我没有足够的代表upvote呢)。 其他人:通常会被禁用cron; 和任何限制足以拒绝/ cron的pipe理员将最不满意你试图通过在循环中运行你的shell脚本来规避策略…