私は現在unixシェルに取り組んでいますc。私の問題はパイプです。私は多くのフォーラムを旅してきましたが、それを解決することはできません。一時ファイルを調べます。
前もって感謝します。
ここのコード:http://pastebin.com/cuGbJ6XD
「man 2 pipe」、「man 2 dup2」、および「man 3 popen」を見たいとします。最初の 2 つは必要なものです。最後の 2 つは作成しようとしているもののサブセットですが、アイデアを提供する必要があります。
基本的な手順
- フォーク
- パイプを作成する
- 再びフォークする
* フォークの一方の側で、stdout (1) を閉じ、パイプ出力を 1 に dup2
* フォークの反対側で、stdin (0) を閉じ、パイプ入力を dup2 する0
* 両側で、元のパイプ記述子を閉じます
- フォークの両側で、正しいプログラムを実行します。
長くなりましたが、覚えていることは以上です。