Bash Gearmanワーカーにパラメータを標準入力として使用させる方法は?

Bash Gearmanワーカーにパラメータを標準入力として使用させる方法は?

gearmanのxargsメソッドに引数を渡すのを見たことがありますが、STDINをgearmanワーカーへの入力として使用するスクリプトをどのように取得しますか?

ここでのユースケースは、複数のIDがあり、これを単にこのようにトリガーしたいということです。

gearman -f job 123456
gearman -f job 123457
gearman -f job 123458
gearman -f job 123459
gearman -f job 123460

これができれば、ID番号のリストを繰り返すのはとても簡単です。

ベストアンサー1

スクリプトがすでに$ 1を入力として使用していて、デフォルトでstdinに設定したい場合($ 1が設定されていない場合)、この方法で変数を設定できます。

# Set id to first argument or stdin if that is blank
id=${1:-$(cat -)}

その後、起動すると、オペレータは単に実行します。

gearman -w -f job script.sh

次に、var が 123456 に設定されたワーカーにジョブを送信するには、次のようにします。

gearman -f job 123456

おすすめ記事