UNIXプログラミング質問すれ Part7
■ このスレッドは過去ログ倉庫に格納されています
0498デフォルトの名無しさん
2005/12/25(日) 19:26:12パイプを使って対話型のプログラムを親プロセスから
操作したいと思ってテストプログラムを作ったのですが
うまくいきません。
子供はfgetsでループして取ってきた文字列をstdoutに出力
するという単純なプログラムです。親はforkして以下の図の
ようになるようにpipe処理をした後、適当な文字列をwrite
して直後にreadしています。
+------+ +------+
|親 |---(stdin)-->|子 |
| |<--(stdout)--| |
+------+ +------+
最終的な理想は、親が子にさまざまなコマンドを発行して
操作し、結果を取得するということをアプリケーションが
終わるまで行うことです。
テストプログラムではreadした瞬間止まってしまっているようなの
ですが双方向パイプでコマンドと対話するのはなにかコツの
ようなものが必要なのでしょうか?。
テストで作った子(メッセージ欄に貼り付け)と親プログラム(添付txt)
のソースは以下のURIにあります。
ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/joyful.cgi?mode=thr&no=1344
■ このスレッドは過去ログ倉庫に格納されています