GNUパラレル:パイプされた標準入力をファイルのようにリダイレクトします。

GNUパラレル:パイプされた標準入力をファイルのようにリダイレクトします。

並列化する次のコマンドがあるとします。

my_command --file <(my | pipeline)

今、特定のチャンクで並列化したいと思います。

my | pipeline | parallel --spreadstdin my_command --file <(parallel's stdin)

Gnuパラレルを使用してこのリダイレクトをどのように実行しますか?

答え1

私が正しく理解した場合、parallel --spreadstdin入力ブロックは実行中のプロセスの標準入力に送信されるので、読みたいのはmy_commandParallelの標準入力ではなく、独自の標準入力です。

my_commandデフォルトでは、stdinを読み取らない場合は、通常は/dev/stdin「raw」stdinと同じファイル/パイプで解決されるファイル名を代わりに使用できます。

だから

my | pipeline | parallel --spreadstdin my_command --file /dev/stdin

それはあなたが望むものでなければなりません。

関連情報