通过添加和删除适当的条目来管理 Linux 的 crontab 文件。它能跟踪源文件,因此在修改此文件后,可以安全地进入和更新用户的 crontab 文件(不会删除使用 crontab -e 添加的条目)。

dev-master 2015-07-18 08:57 UTC

This package is not auto-updated.

Last update: 2024-09-14 18:14:59 UTC


README

最新构建状态:Build Status

通过添加和删除适当的条目来管理 Linux 的 crontab 文件。它能跟踪源文件,因此在修改此文件后,可以安全地进入和更新用户的 crontab 文件(不会删除使用 crontab -e 添加的条目)。

安装

  • 将文件复制到您的项目中
  • 从 src 目录包含文件或使用一些自动加载器
  • 按照以下说明使用

要求

如果您想以其他用户身份使用此工具,请确保在 sudoers 文件的末尾启用适当的条目(使用 visudo),例如。

%developers ALL=(www-data)NOPASSWD:/usr/bin/crontab

上面的意思是在 developers 组中的用户可以无需输入密码即以 www-data 用户身份运行 cron 程序。

用法

以下是一个简单示例。向 crontab 添加一个简单任务

<?php
use qi\crontab\CrontabManager;

$crontab = new CrontabManager();
$job = $crontab->newJob();
$job->on('* * * * *');
$job->onMinute('20-30')->doJob("echo foo");
$crontab->add($job);
$job->onMinute('35-40')->doJob("echo bar");
$crontab->add($job);
$crontab->save();

一个更复杂的示例,但编写起来更简单。添加和删除文件以管理 cron 作业。文件将更新,以便不会干扰 cron 中的其他任务

<?php
use qi\crontab\CrontabManager;

$crontab = new CrontabManager();
$crontab->enableOrUpdate('/tmp/my/crontab.txt');
$crontab->disable('/tmp/toremove.txt');
$crontab->save();

您还可以使用控制台中的内置工具:位于 bin/ 目录下的 cronman。

bin/cronman --enable /var/www/myproject/.cronfile --user www-data