为什么在运行时'condor_wait'不更新

时间:2019-10-10 15:02:13

标签: condor

我有一个bash脚本,旨在检查Condor日志文件是否完整:

   eval "condor_wait -wait ${PRIVATE_TIMEOUT} ${logfile}" > /dev/null &
            timer="$(date +%s)"
            myPid=$!

            while kill -0 "$myPid" 2> /dev/null
            do
                    t_passed="$(($(date +%s)-timer))"
                    printf 'Elapsed: %dh:%dm:%ds of %dh:%dm:%ds \r'\
                    $(($t_passed/3600)) $(($t_passed%3600/60)) $(($t_passed%60))\
                    $(($PRIVATE_TIMEOUT/3600)) $(($PRIVATE_TIMEOUT%3600/60)) $(($PRIVATE_TIMEOUT%60))


            done

这在过去非常有效。但是,我当前遇到的奇怪行为是,日志文件完成后,运行condor_wait ${logfile}不会更新。

例如,如果在作业完成之前运行condor_wait ${logfile},将根本没有输出。但是,如果一个人在另一个终端中再次运行相同的命令,则会发现该作业已终止。

这对我来说是新行为,但现在似乎独立于我的bash脚本而发生。以前从来没有问题,而且我不明白为什么会看到这种效果。

是否有更好的方法确定上述工作是否完成?

非常感谢,

杰克

0 个答案:

没有答案