加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – 在phing中获得生成的exec的pid

发布时间:2020-12-13 17:53:49 所属栏目:PHP教程 来源:网络整理
导读:我正在使用phing并通过ExecTask运行selenium服务器.有时我需要通过终止其进程来停止运行服务器. 是否有可能在ExecTask中产生进程的PID? 不,ExecTask不能直接给出生成进程的pid.它只能返回它的退出状态和输出. 也许您可以修改在ExecTask中运行的命令来保存生
我正在使用phing并通过ExecTask运行selenium服务器.有时我需要通过终止其进程来停止运行服务器.

是否有可能在ExecTask中产生进程的PID?

不,ExecTask不能直接给出生成进程的pid.它只能返回它的退出状态和输出.

也许您可以修改在ExecTask中运行的命令来保存生成进程的pid.你可以使用$!获取最近的后台命令的pid.

job1 &                     //start job1 and run in background,end command with &
p1=$!                      //stores the pid 
echo $p1                   //gives pid of job1

当你想要杀死selenium服务器时,你可以在另一个ExecTask中调用它:

pkill pid_to_kill

我不确定在shell环境中使用ExecTask进行的更改是否保留.如果是,则可以使用$p1.用$p1替换pid_to_kill以杀死job1.否则,您将必须回显pid并使用其输出中的值.

否则你将做pgrep name_of_program.它将为包含该名称的所有进程提供.然后你可以用pkill杀死它.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读