私は、入力ファイルから読み込んで出力ファイルに書き込むmyProgramという実行可能ファイルを持っているとしましょう。このプログラムのコマンドラインは次のようになります。stdinとstdoutを使って同じcプログラムにパイプする
./myProgram -o outputfile inputfile
-o
オプションの引数は、出力ファイル名を指定します。そのようなファイルが存在しない場合、プログラムはそれを作成します。
私はmyProgramを複数回実行できるかどうか、1つのインスタンスの出力を次の入力にパイプすることができないかと思います。たとえば、
./myProgram inputfile | ./myProgram -o outputfile
これを達成することは可能でしょうか?もしそうなら、私は何を実装しなければなりませんか? execコールとフォーク?単純な読み取りと書き込みの呼び出し?
これは標準的なコマンドラインの動作です。例えばcoreutilsプログラムのソースを確認してください。 ['cat'](http://git.savannah.gnu.org/cgit/coreutils.git/tree/src/cat.c#n655)。 – Max