carles/scheduled-command-bundle

从 Symfony 管理定时命令

1.1.1 2020-12-18 01:16 UTC

This package is not auto-updated.

Last update: 2024-09-20 20:00:48 UTC


README

此包允许您使用 Unix at 命令安排命令。

安装

打开命令行,进入您的项目目录,然后执行以下命令以下载此包的最新稳定版本

composer require carles/scheduled-command-bundle

此命令要求您已全局安装 Composer,如 Composer 文档 中的安装章节所述。

使用方法

要安排一个命令,只需配置一个 ScheduledCommand 并将其持久化

use CommandSchedulerBundle\Entity\ScheduledCommand;

$scheduledCommand = new ScheduledCommand();

$scheduledCommand->setCommand("echo 'Happy New Year'");
$scheduledCommand->setDatetime(new \DateTime('01-01-2020 00:00:00'));

$this->getDoctrine()->getManager()->persist($scheduledCommand);
$this->getDoctrine()->getManager()->flush();

此包使用 doctrine 事件创建一个配置了命令的 at 任务。命令将被存储在配置目录下的文件中。
默认目录是 /tmp,但您可以在配置中自由更改它

scheduled_command:
    temp_command_files_dir: /my/directory

目前,此包只在安装了 at 命令的 Unix 环境中工作,但将来添加 Windows 兼容性会很好。