【发布时间】:2021-02-03 12:00:03
【问题描述】:
我正在使用 shell_exec() 的 Laravel 框架中工作。我正在创建命令字符串,如下例所示。
$cmd = "php artisan serve:setup";
$resp = shell_exec($cmd);
如何为上述命令命名?它在系统监视器中仅显示为“php”;我有多个这样的命令。我需要访问该命令的PID 以及该命令的状态。
命令运行成功,在系统监视器中显示进程名称为“PHP”。
我需要来自 PHP 的带有 exec() 或 shell_exec() 的进程名称。
我试过这样:
$cmd = "bash -c exec ServerCPP -a cd $path && php artisan serve:setup 2>&1";
$resp = shell_exec($cmd);
dd($resp);
它给出了错误:“无法打开输入文件:artisan。”
【问题讨论】:
-
这能回答你的问题吗? Start a process with a name
-
FTR:这与 PHP 无关,仅依赖于 OS 工具来更改进程标题。
-
@Peter,我正在使用 php 函数来运行此命令,它来自代码。
-
在命令末尾添加
&& echo $!。这将在最后一行输出 pid。您可能需要 trim() 最后一行。