2014-04-06 3 views
4

클러스터를 사용 중입니다. qsub 명령을 사용하여 내 업무를 배포합니다. 원하는 작업 ID를 얻을 수 있으므로 작업을 모니터링 할 수 있습니다.qsub에서 작업 ID를 가져 오는 방법

#!/bin/bash 
JOBID=$(qsub job1) 
# Monitoring base on $JOBID 

내가 페이지 http://wiki.ibest.uidaho.edu/index.php/Tutorial:_Submitting_a_job_using_qsub을 발견하고, 변수 PBS_JOBID에 대해 이야기하지만 나는 그것을 사용하는 방법을 알고하지 않습니다

기본적으로,이 같은 몇 가지 일을합니다. 아무도 그것을하는 방법을 알고 있습니까?

는 (내 용액 지금 jobID='qsub task | cut -d ' ' -f 3'이다)

+1

. 나는 당신이 물어보고있는 것을 가리 키기 위해 "pbs"태그를 추가했습니다. –

답변

5

qsub는 매우 예측 가능한 출력을 갖는다. 그리드 인터페이스와 같은 많은 자동화 된 제출 시스템은 단순히 qsub의 출력을 구문 분석하여 작업 ID를 찾습니다.

구문 분석의 예는 BLAHP 프로젝트 (유럽식 그리드 미들웨어)에서 사용할 수 있습니다.

jobID=`${pbs_binpath}/qsub $bls_tmp_file` # actual submission 
... 

# The job id is actually the first numbers in the string (slurm support) 
jobID=`echo $jobID | awk 'match($0,/[0-9]+/){print substr($0, RSTART, RLENGTH)}'` 

(source)

이 코드는 몇 년 동안 생산에 사용되었으며, PBS, PBS 프로 및 SLURM 모두 qsub을 위해 일했다.

+0

감사합니다. – sflee

3

당신은 사용할 수 -terse :

나는`qsub`라는 명령을 사용 serveral 다른 배치 시스템이있다 생각
$ echo sleep 5 | qsub -terse 
3543