我正在使用 PBS qsub 在集群上运行脚本,该脚本必须输出以批处理作业提交时间命名的报告文件。
批处理作业提交时间是其加入 PBS 批处理作业队列的时间。
我检查了所有 PBS 默认变量,但没有发现任何与作业提交时间相关的内容。
我想知道如何在不创建新输入变量的情况下获取这个时间。
谢谢。
答案1
我自己弄清楚了这一点。
将以下函数添加到您的 PBS 批处理作业脚本中以获取作业提交时间。
getsubmitdate(){
local datestring=`qstat -f $PBS_JOBID | grep -F qtime | awk '{for(i=3;i<8;i++) printf $i" "}'`;
local result=`date -d "$datestring" +%Y%m%d` ;
local outputvar=$1 ;
if [[ "$outputvar" ]] ; then
eval $outputvar="'$result'"
else
echo "$result"
fi
}
getsubmitdate SUBMITDATE
echo $SUBMITDATE