将外部进程的输出管道传输到正在运行的脚本C++
Pipe external process's output into running C++ script
我正在用C++的SFML框架制作一个简单的bash终端。我知道如何使用system()fn启动外部进程,但我需要一种将子进程的输出流式传输到当前脚本中的方法。有简单的方法吗?也许使用了一个fstream破解?我正在使用Unix。
您需要使用pipe()s-。基本思想是fork(),然后将文件描述符0(stdin)、1(stdout)和2(stderr)分别复制到特定的管道中,然后在fork的"main"分支中等待pid(),直到在"child"分支上获得WIFEXITED
。
相关文章:
- 如何通过cpp程序运行shell脚本
- 如何在c++中使用system()来运行包含空格的python脚本
- 在cygwin中运行c++脚本时发生错误
- 如何从测试脚本中运行WAF编译C++程序?
- 如果从脚本运行应用程序,则在 Linux 中使用 GDB
- 在 Windows 上运行带有 C++ 的 bash 脚本
- 如何在程序中运行带有参数C++ VBS 脚本?
- 从Raspberry Pi / Linux上的Python脚本运行和停止C++程序
- 在 2 个并行运行的脚本(python 和 C++)之间传递消息
- 如何在visual studio代码的调试中运行c++脚本
- 如何隐藏在c++中运行powershell脚本时按任意键继续
- 如何从 Lua 访问运行 Lua 脚本的类的变量
- 通过 sh 导入模块错误运行.py脚本
- 从以太坊坚固性合约运行C++脚本
- 从 qmake 运行脚本以获取内部版本号
- 是否可以访问C++标头/库并在 python 控制台中运行C++脚本?
- 如何在C++程序中运行 C 脚本代码
- Python 可以运行脚本的多个实例,每个实例都包含自己的数据吗?
- 在C 中构建并运行C -C 脚本(而不是LUA)
- 使用System()运行脚本时出现分段故障