배치 모드에서 일부 명령을 실행하고 있습니다. 기존 명령이 완료되면 추가 작업을 수행해야 하므로 명령이 완료될 때까지 기다려야 합니다.
예를 들어:
bsub -q gui -I calibre -drc -batch
wait
wait 명령에 언급된 작업의 프로세스 ID를 가져오는 방법이나 기존 명령이 종료될 때까지 기다리는 다른 대안을 알려주실 수 있습니까?
답변1
이 시도
bsub -q gui -I calibre -drc -batch & pid=$!
wait ${pid}
여기에 pid
변수가 있습니다 . 어떤 이름이라도 지정할 수 있습니다.
답변2
내장기다리다명령은 이미 작업을 수행해야 합니다. 백그라운드에서 실행 bsub
되더라도 완료될 때까지 기다려야 합니다. bsub
그러나 원하지 않으면 wait
PID를 얻기 위해 또는 를 사용한 다음 "완료될 때까지 대기" 루틴을 직접 작성할 수 있습니다.pgrep bsub
ps -eo pid,comm | grep bsub
답변3
${pid}에 대해 상위 명령 pid=$!wait를 시도했지만 오류가 발생했습니다.
'기다릴 인수가 너무 많습니다.'
조사해 보시고 가능하다면 해결책을 제시해 주시기 바랍니다.
고마워요 이사
답변4
우리는 pgrep bsub도 사용하는 위 명령을 시도한 다음 pgrep bsub가 여전히 오류를 받을 때까지 기다립니다.
'기다릴 인수가 너무 많습니다.'
조사해 보시고 가능하다면 해결책을 제시해 주시기 바랍니다.
고마워요 이사