一个用户的多个 crontab

rea*_*dow 15 unix cron crontab

有没有办法为一个用户使用多个 crontab 文件?沿着每个项目的 crontab 文件而不是每个用户的 crontab 思考...

任何帮助表示赞赏...

Kei*_*son 15

无论如何,将 crontab 维护在单独的文件中通常是个好主意,并使用crontab filename. (我将 crontab 文件保存在源代码控制系统中。)

你可以有多个 crontab 文件,并用

cat file1 file2 file3 | crontab
Run Code Online (Sandbox Code Playgroud)

crontab命令通常只为每个用户管理一个 crontab。但是您可以将系统 crontab 文件添加到/etc/cron.d目录中。这些文件在时间规范之后有一个额外的字段,用于指示作业的用户,并且每个用户可以有多个文件。即使其中一个有语法错误,其他的仍然会执行。

您需要 root 访问权限才能在该目录中安装文件。

man 5 crontab 详情。

我不相信像这样绕过正常的 crontab 机制是个好主意,但它应该有效。

(这假设“Vixie Cron”实现,这可能是您的系统使用的。)

注意:您可能想尝试

crontab file1 file2 file3 # WRONG
Run Code Online (Sandbox Code Playgroud)

但是一个快速的实验表明,除了第一个之外的所有文件名都被默默地忽略了。手册页说接受单个文件名,但没有说明如果提供多个​​文件名会发生什么。


小智 4

为什么要这么做?您可以在 crontab 中使用多行 - 我认为这也可以完成这项工作。

还有一些您可能会使用的目录:

cron.d/
cron.daily/
cron.hourly/
cron.monthly/
cron.weekly/
Run Code Online (Sandbox Code Playgroud)