dgr / nohup
一个用于在后台运行命令的库,它会返回进程的pid,并在另一个进程中的任何时间获取其运行状态,并且可以随时停止。它支持Windows、Linux和Mac osx。
v0.1.0
2017-04-20 06:19 UTC
Requires (Dev)
- phpunit/phpunit: ^5.7
This package is not auto-updated.
Last update: 2020-11-14 07:09:39 UTC
README
一个用于在后台运行命令的库,它会返回进程的pid,并在另一个进程中的任何时间获取其运行状态,并且可以随时停止。
支持以下系统
- Windows
- Linux
- Mac osx
文档语言
- 英语
- 简体中文
安装
通过composer安装
composer require dgr/nohup
用法
后台运行脚本
看看,多么简单!
use dgr\nohup\Nohup; $process = Nohup::run('sleep 5');
它将在后台运行5秒。
但是,它可以随时停止
//... $process->stop();
现在停止了!
获取pid: $process->getPid()
,它将在Windows和*inx系统上返回实际的pid
使用函数 $process->isRunning()
获取其运行状态
use dgr\nohup\Nohup; $process = Nohup::run('sleep 5'); while ($process->isRunning()) { echo '.'; sleep(1); } echo "Done.\n";
输出: .....完成。
从已知的pid($pid)创建进程
use dgr\nohup\Process; $process = Process::loadFromPid($pid); //or $process = new Process($pid); if ($process->isRunning()) { $process->stop(); }
方法
Nohup::run($commandLine, $outputFile, $errorFile)
$commandLine
:字符串,要运行的命令。$outputFile
:字符串,保存输出内容的文件路径。$errlogFile
:字符串,保存错误消息的文件路径。
作者
大官人