書き込み時にデータを消費せずに複数のプロセスから読み取ることができるファイル記述子を作成したいと思います。名前付きパイプは知っていますが、これは fifo であるため、データを取得できるプロセスは 1 つだけです。
私のユースケースは次のとおりです。git では、フックは stdin を使用して、処理するデータをフックに渡します。親フックから複数のサブフックを呼び出せるようにしたい。各サブフックは、親が受け取るのと同じ stdin データを取得する必要があります。パイプを使用するときに間違っていなければ、各サブプロセスは同じ stdin を取得しません。代わりに、stdin を読み取る最初のフックがデータを消費します。これは正しいです?
この時点で実行可能な唯一のオプションは、標準入力をファイルに書き込み、各サブプロセスからそのファイルを読み取ることです。別の方法はありますか?