我的 crontab 中有一个很长的列表,这很糟糕吗?

我的 crontab 中有一个很长的列表,这很糟糕吗?

我正在考虑构建一个应用程序,以所需的时间间隔在屏幕上显示消息。

我想使用 cron 来实现这一点,我正在考虑我的选择。最简单的方法是将命令直接打印到 crontab 中。这是个坏主意吗?

答案1

不,拥有一长串列表并不坏crontabcron在最短的时间内以几分钟执行,所以它不是实时的,但您也可以实时收到通知(见下文)。


作为替代选项,您还可以使用cron1 个脚本来执行crontab您原本要包含在crontab执行文件的位置中的所有不同行,或检查您想要从中获取通知的所有不同选项。这也将更容易维护:如果您需要新任务,您可以将其添加到脚本中,然后您可以从脚本本身检查该作业是否有缺陷(cron 可能相当挑剔)。


我还建议您看看如何创建upstart作业。这更符合 Ubuntu 的方式。这样您就可以创建一个作业,daemon或者service您可以从命令行启动和停止作业。此外,它还会让您的通知实时显示,而不是定期显示。

Upstart 是一个基于事件的 /sbin/init 守护进程的替代品,它负责在启动期间启动任务和服务,在关机期间停止它们,并在系统运行时监督它们。

# Ubuntu upstart 文件位于 /etc/init/yourservice.conf

启动前脚本
    mkdir -p /var/log/你的公司/
结束脚本

重生
重生限制 15 5

在运行级别启动 [2345]
在运行级别 [06] 停止

脚本
su - youruser -c "NODE_ENV=test exec /var/www/yourcompany/yourproject/yourservice.js 2>&1" >> /var/log/yourcompany/yourservice.log
结束脚本

答案2

使用gnome-schedule

在此处输入图片描述

它很直观,而且更容易启动图形应用程序(通过这种方式cron需要一些额外的工作)——只是不要忘记将命令标记为X 应用程序任务配置中的一个。

主页: http://gnome-schedule.sourceforge.net/

使用示例: http://www.liberiangeek.net/2011/04/schedule-a-job-to-automatically-put-ubuntu-into-sleep-or-hibernation-mode/

相关内容