(GNU?)並列処理が自動的に失敗する理由とそれを解決する方法は?

(GNU?)並列処理が自動的に失敗する理由とそれを解決する方法は?

一部のシミュレーションデータを後処理するためのより大きなスクリプトには、次の行があります。

parallel bnzip2 -- *.bz2

私がparallel正しく理解した場合(そうでないかもしれません)、プログラムのnコアスレッドは、リストされた拡張子を持つすべてのファイルで実行する必要があります。私はコマンドのスペルを間違って入力したことがわかりますbunzip2。ここに警告またはエラーメッセージが表示されると予想していますが、自動的に失敗します。意図的なことでしょうか?今後このことが苦しんでいないようにするにはどうすればよいですか。

修正する:

parallel私のインストールは思考と異なる場合があります。

> parallel --version`


parallel: invalid option -- '-'
parallel [OPTIONS] command -- arguments
    for each argument, run command with argument, in parallel
parallel [OPTIONS] -- commands
    run specified commands in parallel

parallel私のシステムのマニュアルページは以下を提供します。

 parallel(1)                                                        parallel(1)
NAME
       parallel - run programs in parallel
....
AUTHOR
   Tollef Fog Heen

そうだいいえGNUバージョン。

答え1

moreutilsのTollefとの類似性のために混乱しました。バラよりhttps://www.gnu.org/software/parallel/history.html

次のように簡単にGNU Parallelをインストールできます。

wget http://git.savannah.gnu.org/cgit/parallel.git/plain/src/parallel
chmod 755 parallel
cp parallel sem

詳しくは、GNU Parallelの紹介ビデオをご覧ください。 https://www.youtube.com/playlist?list=PL284C9FF2488BC6D1

答え2

(これについてコメントしたいのですが、特権が不足しています。)

ただ使用することもできますparallel --gnu。 Ubuntu 12(.04?)はTollefバージョンを使用すると述べましたが、実際には何らかの理由でTollefの構文をデフォルトとして使用するgnu実装です。

alias parallel='parallel --gnu'これ以上騒ぎを避ける必要がないように、ログインスクリプトにこれを追加しました。

関連情報