qi-interactive / cron
通过添加和删除适当的条目来管理 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
通过添加和删除适当的条目来管理 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