cron作业具有相同的执行时间

假设我有几个cron作业同时运行:它们是并行执行还是一个一个执行?

(我的情况是Debian挤压与cronjobs放在/etc/cron.d/mycronjobs)。

为了完整性,例如/etc/cron.{hourly,daily,weekly,monthly}中的作业将按顺序运行。 运行部分脚本遍历此目录中的所有文件。

02 4 * * * root run-parts /etc/cron.daily 

所以你可以结合使用命名约定(例如类似于/etc/init.d/rc*.d的编号)来确保作业按顺序运行。

cron中列出的任务将平行运行,就像进程通常一样。 没有办法确定哪一个会先启动,在任务B开始之前没有办法确定任务A已经完成。

Cron是一个持续运行的守护进程(服务) 但是,它每分钟读取一次crontabs。

作业执行的确切顺序取决于系统的执行情况。

由于这些文件遵循正常的crontab(5)语法,某些分发放在/etc/cron.d/中的松散文件将被扫描以进行cron计时器设置。

个人工作的执行顺序取决于你为他们设定的时间表。

他们将平行运行。 您可以使用以下方法按顺序运行进程。

 # Use a semicolon to run command2 after command1 has completed 02 4 * * * /path/to/command1 ; /path/to/command2 # Use two ampersands to run command2 after command1 has completed successfully. 02 4 * * * /path/to/command1 && /path/to/command2 # Use two vertical rules to run command2 after command1 has completed unsuccessfully. 02 4 * * * /path/to/command1 || /path/to/command2