kopug memo

名古屋で働くとあるWebエンジニアの覚書。

xargs で 並列処理

意外と忘れていたので備忘録がてらメモ

(例)

$ yes | head -10000 | xargs -L 30 -P 2 ruby -e 'sleep(1); p ARGV.size;'

-L : 引数の数が30件に達したら, コマンドを実行する
-P : 同時実行数を2に指定

上記のコマンドを実行をすると, 引数の数を標準出力に出しているので確認する事ができる

$ yes | head -10000 | xargs -L 30 -P 2 ruby -e 'sleep(1); p ARGV.size;'
30
30
30
:  :  :

psコマンド等で確認をすると 2プロセス動いているのが確認できる