GNU Parallelのジョブ数を最初の引数に制限する方法は?

GNU Parallelのジョブ数を最初の引数に制限する方法は?

2番目のパラメータを割り当てながら、1つのパラメータセットに基づいて一連の並列ジョブを実行したいと思います。私は次のように--linkオプションを使用します。GNU Parallel

parallel --jobs 3 --link echo ::: A B C ::: D E F G
A D
B E
C F
A G

最初のパラメータセットの数が2番目のパラメータセットよりも高い場合、これは完全に機能します。

上記の例では、操作をA2回繰り返しました。

最初のパラメータセットの重複を防ぐ方法は?つまり、ジョブはジョブのA..C定期D..G的なパラメータにすぎませんA..C

主張は

A D
B E
C F

最初のグループの数が多い場合と同様に、

parallel --jobs 3 --link echo ::: A B C H ::: D E F
A D
B E
C F
H D

答え1

入力ソースが重複したくない場合は、入力ソースの長さを同じにしてください。変える:

parallel --jobs 3 --link echo ::: A B C ::: D E F G

ランニング:

parallel --jobs 3 --link echo ::: A B C ::: D E F

現在、次のこともできます。

parallel --jobs 3 echo ::: A B C :::+ D E F G

しかし、これはバグと見なされるので、今後は機能すると期待しないでください。

関連情報