以您似乎正在做的方式生成另一个终端是非常不寻常的。较干净的方法是使用文件(或命名管道)从聊天程序接收输出,然后tail -f
在另一个终端上运行(或另一个程序以正确格式化输出)以显示其内容。第一个终端将用于输入(可能来自stdin
),第二个终端将接收的输出tail
。
命令行用法示例为:
运行聊天客户端,将所有输出发送到名为“ output”的文件:
$ ./client [parameters] > output
$ tail -f output
请记住,您的聊天程序应该能够同时处理两个不同的输入源(来自服务器和用户的传入消息)select()
。