"sem" 사용 시 계산에 실패하는 명령

"sem" 사용 시 계산에 실패하는 명령

sem여러 셸 스크립트를 병렬로 실행 하고 실패한 명령 수를 얻고 싶습니다 . 그러나 종료 코드는 항상 0입니다.

sem bash -c 'exit 0'
echo $? # => 0
sem bash -c 'exit 1'
echo $? # => 0
sem --wait
echo $? # => 0

카운트를 어떻게 알 수 있나요?

답변1

당신은 할 수 없습니다. sem프로세스와 통신하지 않으므로 종료 값을 얻을 수 없습니다.

이것을 원하시면 를 사용하세요 parallel.

$ parallel "bash -c 'exit '{}" ::: 0 1 2 3 4 0
$ echo $?
4

이는 100까지 작동합니다. 101은 100개 이상의 작업이 실패했음을 의미합니다.

실패한 작업이 이보다 많으면 --joblog해당 열의 실패 횟수를 사용하여 계산합니다 Exitval.

관련 정보