php - 向由 proc_open() 打开的进程发送信号

标签 php signals proc-open

我们这里有一个实用程序,它使用 proc_open() 调用 ssh 在远程计算机上运行命令。但是,在某些情况下,我们需要停止远程计算机上的命令,但 proc_close() 和 proc_terminate() 不会导致所需的信号发送到远程计算机ssh 连接的一侧。 SSH 在终止时通常会向正在运行的程序发出 SIGHUP 信号,但我们需要向 ssh 发送 SIGINT 信号,ssh 会将其转发到远程端运行的程序.

我已经尽可能多地用谷歌搜索,似乎有许多用于接收信号的pcntl函数,但我没有找到任何东西关于通过 PHP 发送信号的信息,更不用说与 proc_* 函数相关的任何内容了。

最佳答案

您可以通过 PHP 发送信号:

posix_kill(posix_getpid(), SIGTERM); 

关于php - 向由 proc_open() 打开的进程发送信号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23414704/

相关文章:

linux - 信号&系统调用使用&关系

python - multiprocess.process 类中的信号处理程序,无法获取类的 val

PHP 显示 CMD 命令提示符窗口 (Windows)

PHP proc_open() 超时

php - 数据库连接失败 您的 SQL 语法有错误;

php - SQL中匹配多个相似的字符串

php - 在 Laravel PHP 框架中找不到 PGSQL 驱动程序

php - Laravel - 如果值包含某个字符串(从搜索输入中获取),则查询模型

signals - 是否可以以 "defer"方式捕获 Ctrl+C 信号 (SIGINT) 并运行清理功能?

PHP proc_open bash 与破折号