recordio progrecordio は prog を起動します。 prog の入出力を示す行を記述子 2 に出力します。
recordio は記述子 2 の各行の始まりに入力には < を、出力には > を付けて、prog のプロセス ID を挿入します。 各行の終りには + や空白や [EOF] を挿入します。 空白は入力あるいは出力に改行があったことを示し、[EOF] は入力あるいは出力の終りを示します。
recordio は入出力の各パケットをすぐに出力します。 パケットを結合して行にまとめることはしません。 例えば、
recordio sh -c 'cat /dev/fd/8 2>&1' > /dev/nullは
5135 > cat: /dev/fd/8: Bad file descriptor 5135 > [EOF]あるいは cat プログラムが複数のパケットを出力すれば
5135 > cat: + 5135 > /dev/fd/8+ 5135 > : + 5135 > Bad file descriptor 5135 > [EOF]を生成します。
recordio は長いパケットに対して複数行を使って、各行がアトミックに出力されることを保証します。
recordio は prog を子プロセスとして動作します。 prog の出力が終りに達したら終了します。