2011-12-31 10 views
0

可能性の重複:
How to invoke another terminal for output programmatically in C in LinuxLinuxでCを使って別の端末に書き込む方法は?

私は、クライアント・サーバ・アプリケーションをプログラミングしていると私は、デバッグウィンドウを作成します。

サーバー側では、着信と発信の通信を別の端末で印刷したいと考えています。 gnome-terminalを通して端末を起動することはできますが、他の端末には書き込まないでください。

+0

http://stackoverflow.com/questions/3445645/how-to-invoke-another-terminal-for-output-programmatically-in-c-in-linux – obo

答えて

1

あなたが望むものに@ibidのアイデアを組み合わせます。ログファイルに書き込んで実行するより:

xterm -e tail "-f" log_file 

これは、 "tai -f log file"コマンドを実行するxtermに広がります。

2

端末に印刷する必要が本当に必要な場合を除き、デバッグのプリントアウトだけでなく、気にしません。

私は、サーバをログファイルにプリントして(適切に頻繁にフラッシュすることを覚えておいてください)、別の端末でtail -fを使ってそれに従います。これには、私が余暇で調べることができるサーバーのデバッグ印刷の記録を私に与えるという追加の利点があります。

+0

もう1つのアイデアは、 xterm ")、すべてのSTDERR_FILENOを新しいxtermにリダイレクトして、私が望むものを達成することができますが、STDERR_FILENOを新しいxtermにマップするにはどうしたらいいですか? –

+0

@ibidファイルの代わりに名前付きパイプに書き込むこともできます – fge

0

この質問に対する「正しい」答えは、正しいtty番号が分かっていれば、/ dev/ttyNUMに書き込むことができるということです。

しかし、それは技術的な正しさだけです。何か他のことをする必要があります。あなたがしようとしていることは間違っています。

関連する問題