可以使用shell执行job。这样就可以做很多判断了。看这个是否对你有帮助。http://www.cognoschina.net/club/viewthread.php?tid=36953&extra=#If the job still runing,stop it; #If job state is not finished ok,then reset the job. jobsta=$($DSHOME/bin/dsjob ...
显示全部可以使用shell执行job。这样就可以做很多判断了。看这个是否对你有帮助。
http://www.cognoschina.net/club/viewthread.php?tid=36953&extra=#If the job still runing,stop it;
#If job state is not finished ok,then reset the job.
jobsta=$($DSHOME/bin/dsjob -jobinfo $projectName $jobName 2>&1 | awk -F: '/^Job
Status/{print $2}')
echo 'last status: ' $jobsta
if [ "$jobsta" == " RUNNING (0)" ];then
echo "Stop before run job $jobname"
$DSHOME/bin/dsjob -stop $projectName $jobName >>${logdir}/job_stop_` date
+%Y%m%d`.log
sleep 20
fi
if [ "$jobsta" == " RUN FAILED (3)" -o "$jobsta" == " STOPPED (97)" -o "$jobsta" == " CRASHED
(96)" ];then
echo "Reset before run job $jobname"
$DSHOME/bin/dsjob -run -mode RESET $projectName $jobName >>${logdir}/job_init_`
date +%Y%m%d`.log
sleep 10
fi
收起