指定した単位でコマンドを並列実行する Bash/Zsh

はじめに

同じコマンドを変数を変えて実行する場合、xargsが便利です。

一度にすべてのコマンドを並列実行するとマシンリソースが足りなくなるので、指定した単位で並列実行します。

指定した単位で並列実行する

catでファイルから1行ずつ読み込んでコマンドを実行する

-I<文字>がdata.listをcatしたときの引数です。

-P<並列数>を変えることで、並列実行数を変えることができます。

cat ./data.list | xargs -P1 -I@ zsh -c "
    echo @
"

xargsのオプションを使用する場合

-a <ファイル名>でもファイルを読み込めます。

xargs -a ./data.list -P1 -I@ zsh -c "
    echo @
"

まとめ

bash/zshで使用できる、コマンドの並列実行の方法を紹介しました。

コメント

タイトルとURLをコピーしました