下面是我使用的pbs示例:
#!/bin/bash
#PBS -S /bin/bash
#PBS -N myJob
#PBS -l nodes=1:ppn=4
#PBS -l walltime=50:00:00
#PBS -q route
export MYMAIL=mytestmail@testmail.com
#PBS -m ae
#PBS -M mytestmail@testmail.com
./script1.sh
echo $PBS_JOBID $PBS_O_WORKDIR | mail -s "$PBS_JOBNAME script1 done" $MYMAIL
./script2.sh
echo $PBS_JOBID $PBS_O_WORKDIR | mail -s "$PBS_JOBNAME script2 done" $MYMAIL
./script3.sh
echo $PBS_JOBID $PBS_O_WORKDIR | mail -s "$PBS_JOBNAME script3 done" $MYMAIL
./script4.sh如您所见,我希望在此过程中接收通知。我的问题是,用户必须写两倍他们的电子邮件地址。
我试过:
#PBS -M $MYMAIL但不起作用。
我还试图找到一个pbs变量,其中包含存储在
#PBS -M mytestmail@testmail.com但没什么..。
一个主意?
发布于 2015-02-25 16:15:15
你用不同的方式发送不同的电子邮件。使用#PBS -M行,您将在头节点上告诉pbs_server应该在哪里发送有关作业的电子邮件,并使用“收邮件”从运行作业的节点向用户发送邮件。
似乎Torque没有设置包含-M内容的环境变量,所以我们不能将它传递给邮件。
我有两个想法给你。第一种方法是尝试从qstat捕获Mail_Users行并解析它。
qstat -f [job number] | grep Mail_Users第二种方法是为每个用户创建一个.forward文件,因为Torque将在默认情况下发送电子邮件给本地用户帐户,从而消除#PBS -M行。您仍然需要将电子邮件或帐户名称传递给邮件,但您可能可以通过:
mail -s "$PBS_JOBNAME script1 done" `whoami`https://stackoverflow.com/questions/28722335
复制相似问题