php - 如何捕获 Windows cmd shell 的输出?

标签 php c++ windows perl

有没有什么办法,比如 Perl 或 PHP,我可以从另一个输出到 Windows cmd shell 的进程中获取输出?我有一个输出某些信息的游戏服务器,例如说“玩家在 43 秒内完成轨道”,我想捕获该行并使用 Perl 或 PHP 向网络服务器发送请求以更新网页上的排名。有没有办法在 Perl 或 PHP 中获取输出管道?或者我可以使用 C++ Windows API 来实现吗?

让我在这里澄清一下:我想执行一个单独的 Perl 或 PHP 脚本来获取 Windows cmd shell 的输出,而显示给 Windows cmd shell 的输出来自不同的进程。

最佳答案

你可以使用 IPC::Open3从其他进程的标准输出中读取。请注意,进程间通信假定进程之间存在父/子关系。如果不是这种情况......我不知道附加到预先存在的过程的输出的机制。在这种情况下,您可能需要更改生产者以将数据写入您的应用程序可以读取的日志文件(或数据库)。

关于php - 如何捕获 Windows cmd shell 的输出?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1002543/

相关文章:

php - MySQL 行已插入但未保存?

c++ - 发布和调试编译程序的源代码是否有所不同? [C/C++]

android - 无法启动服务器 QWsServer 错误 : The address is protected

windows - NTFS 性能和大量文件和目录

windows - Ubuntu wsl2 git 在大型 repos 上获取 "The remote end hung up unexpectedly"

windows - 为什么 g++ 找不到/链接到 qjpeg4.dll?

php - 为 LARAVEL 中的 foreach 提供的参数无效

php - 使用 wp_generator 隐藏 WordPress 版本

php - 为深色背景和 V.S. 设置白色字体颜色在 PHP 中

c++ - 将 char 数组连接在一起