kivagant/runonce

只运行一次任何shell命令(拒绝并发执行)

0.0.4 2016-05-10 07:21 UTC

This package is not auto-updated.

Last update: 2024-09-14 18:20:44 UTC


README

Scrutinizer Code Quality

关于

RunOnce 是一个基于 PHP 的 Unix 工具,可以帮助您只运行一次任何命令。此工具仅执行命令,不会等待结果。

警告

不提供任何保证!

仅支持 Unix。此工具在 OSX 和 Windows 上均不工作。已在 RHEL 7 上进行测试。

安装

将此存储库下载到某个位置或运行。

composer require kivagant/runonce

用法和示例

基本用法

 ./vendor/bin/runonce your-command

详细输出

 ./vendor/bin/runonce -v your-command

示例 1

运行第一个命令

./vendor/bin/runonce sleep 10 && echo 'first launch' || echo 'already running';
> first launch

运行另一个命令:不同的选项被视为不同的进程。

./vendor/bin/runonce sleep 20 && echo 'first launch' || echo 'already running';
> first launch

再次运行第一个命令

./vendor/bin/runonce sleep 10 && echo 'first launch' || echo 'already running';
> already running

示例 2

更复杂的命令

./vendor/bin/runonce php ./cron.php -v=\"some string\" && echo 'first launch' || echo 'already running';
> first launch

./vendor/bin/runonce -v php ./cron.php -v=\"some string\" && echo 'first launch' || echo 'already running';
> Command was already executed with PID  20438
> already running

依赖项

此工具基于 liip/process-manager

贡献

只需分支并发送给我一个拉取请求。

许可

Apache License 2.0