2011-12-31 65 views
0

可能重复:
How to invoke another terminal for output programmatically in C in Linux如何在Linux中使用C在单独的终端上编写代码?

我编程客户端 - 服务器应用程序,我想创建一个调试窗口。

在服务器端,我想在单独的终端上打印传入和传出通信。 我能够通过gnome-terminal产生一个终端,但是如何在其上写入而不是在其他终端上写入。

+0

http://stackoverflow.com/questions/3445645/how-to-invoke-another-terminal-for-output-programmatically-in-c-in-linux – obo 2011-12-31 08:26:36

回答

1

将@ibid想法与您想要的结合在一起。写入日志文件并执行:

xterm -e tail "-f" log_file 

这将跨越执行“tai -f日志文件”命令的xterm。

2

除非你真的需要打印到终端,否则我不会打扰,不仅仅是打印输出。

我将服务器打印到一个日志文件(记住经常适当刷新它),然后在另一个终端中使用tail -f来关注它。这还带来了额外的好处,可以给我一份我可以在闲暇时检查的服务器调试打印的记录。

+0

好吧另一个想法,如果我产卵系统(“ xterm“)并将所有STDERR_FILENO重定向到新的xterm,生病能够实现我想要的,但是如何将STDERR_FILENO映射到新的xterm? – 2011-12-31 08:49:38

+0

@ibid你也可以写入命名管道而不是文件 – fge 2011-12-31 10:15:24

0

这个问题的“正确”答案是,如果您知道正确的tty编号,您可以写入/ dev/ttyNUM ...。

但这只是技术上的正确性,你应该做点别的。你试图做的是错的。

相关问题