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

관련 정보