Ubuntu 12.04 中每天执行一次 Cronjob

Ubuntu 12.04 中每天执行一次 Cronjob

我已经使用 Ubuntu 12.04 设置了一个 VPS,现在我想每天运行一次 cronjob。

命令行如下:

    mono /root/Folder/Aplication.exe

我在网上找了好多资料,但似乎不明白该怎么做。例如,我想在午夜每 24 小时运行一次此命令。

提前感谢您阅读我的问题,当然也感谢您提供的所有答案。

答案1

因为@Guss 的回答和我的回答之间存在一些互补的差异,所以我将保留它。

这是关于的一个例子计划任务设置 (来源):

* * * * * command to be executed
- - - - -
| | | | |
| | | | +----- day of week (0 - 6) (Sunday=0)
| | | +------- month (1 - 12)
| | +--------- day of month (1 - 31)
| +----------- hour (0 - 23)
+------------- min (0 - 59)
  • 如果你想让你的$USER每天0:15点运行一个作业,你需要编辑用户的定时任务文件(位于/var/spool/cron/crontabs/<user_name>)。您可以通过命令执行此操作crontab -e。(可能会出现一个对话框,您必须在其中选择默认终端文本编辑器。)在定时任务文件添加下一行:

    15 0 * * * /usr/bin/mono /root/Folder/Aplication.exe > /var/log/mono.daily.log 2>&1
    
    • /usr/bin/mono建议在 Cron 中使用命令的完整路径。要找到它,您可以使用sudo updatedb && sudo whereis mono
    • > /var/log/mono.daily.log这部分将把输出重定向到一个日志文件,以防你想跟踪发生了什么计划任务。如果要保留前几天的日志数据,可以使用>>而不是>
    • 2>&1这部分将把错误信息放入日志文件中。
  • 如果你想通过,您必须编辑其定时任务文件:sudocrontab -e并添加上面显示的行。

  • 此外,对于日常计划任务,您可以在文件夹中添加可执行文件/etc/cron.daily。要查找示例,请将一些现有文件签入此文件夹中。

答案2

您可以使用 cron 在 Ubuntu(和其他 Linux)中运行计划任务。关于 cron,有一点需要记住,那就是有“用户 cron 表”和“系统 cron 表”。

如果您希望应用程序在用户上下文中运行,则相对简单:以该用户身份登录并运行crontab -e。您将进入编辑器,在其中手动编辑 cron 表。

在用户 cron 表下,您有 6 个字段:

<minute> <hour> <day-of-month> <month> <day-of-week> <command ...>

字段之间用空格隔开,但“ command”除外,它延伸到行尾(有一些注意事项)。阅读man 5 crontab以了解详细信息。

要每天运行某项任务,您可能需要选择一个时间,然后将其编程到前两个字段中,而将所有其他字段保留为星号(即“任何事情都可以”)。因此表达式

1 2 * * * mono /root/Folder/Aplication.exe

将会在每天(每月的每一天,无论星期几 - 这 3 个星号)的凌晨 2:01(前两个字段)运行您的 Mono 应用程序。

现在,因为我看到您已将应用程序安装在 下,所以/root我假设您可能希望将此应用程序作为系统应用程序运行 - 无论如何,在 VPS 中设置服务器时,这也更有意义。系统 crontab 与用户 crontab 非常相似,只是它存储在目录下的文件中/etc,并且它有一个附加字段,指定您想要在哪个用户下运行它 - 很可能是root。因此表达式可能看起来像这样:

1 2 * * * root mono /root/Folder/Aplication.exe

您可能希望将其放在您创建的新文件中/etc/cron.d/- 也许/etc/cron.d/myapp(请注意,没有扩展名 - 这是故意的)。下面/etc/还有其他几个 crontab 文件和目录,它们对于日常运行等非常有用,例如/etc/cron.daily- 请在上文中引用的 crontab 文件手册页中阅读它们。

笔记

  1. 不要运行 Ubuntu 12.04 - 它太过时了。最好试试 16.04
  2. 查看Crontab大师满足您所有的 crontab 表达式需求。

相关内容