1
私はこのようなGNU並列ジョブを実行しています:gnuパラレル:同期出力?
parallel program ::: 1 2 3 4 5 6 7 8 9 10 > output.txt
私は、出力ファイルが注文されることを保証します。すなわち、最初の行はprogram 1
の出力に、program 2
の出力への次の行に相当します。
これをどうすれば保証できますか?
私はこのようなGNU並列ジョブを実行しています:gnuパラレル:同期出力?
parallel program ::: 1 2 3 4 5 6 7 8 9 10 > output.txt
私は、出力ファイルが注文されることを保証します。すなわち、最初の行はprogram 1
の出力に、program 2
の出力への次の行に相当します。
これをどうすれば保証できますか?
私は-k
オプションは、あなたが望むかもしれないと思う:
--keep-order -k Keep sequence of output same as the order of input. Normally the output of a job will be printed as soon as the job completes. Try this to see the difference: parallel -j4 sleep {}\; echo {} ::: 2 1 4 3 parallel -j4 -k sleep {}\; echo {} ::: 2 1 4 3
manページから、後者が実際2 1 4 3
を生成している間、出力は、1 2 3 4
です。