如何将qsub输出重定向到文本文件

时间:2013-09-02 01:42:34

标签: pbs

在我的代码中,我想使用qsub输出信息,例如作业ID,节点名称等,所以我考虑在分配节点时将qsub输出重定向到某个文件,然后可以后来我的代码使用了。

例如,当我使用

请求交互式节点时
[abc@mike1 ~]$ qsub -V -I -l walltime=01:00:00,nodes=1:ppn=16

我正在获得这些输出

qsub: waiting for job 48536.mike3 to start
qsub: job 48536.mike3 ready

--------------------------------------
Running PBS prologue script
--------------------------------------
User and Job Data:
--------------------------------------
Job ID:    48536.mike3
Username:  abc
Group:     Users
Date:      01-Sep-2013 19:14
Node:      mike099 (4657)
--------------------------------------
PBS has allocated the following nodes:

mike099

A total of 16 processors on 1 nodes allocated
---------------------------------------------
Check nodes and clean them of stray processes
---------------------------------------------
Checking node mike099 19:14:52 
Done clearing all the allocated nodes
------------------------------------------------------
Concluding PBS prologue script - 01-Sep-2013 19:14:52
------------------------------------------------------
[abc@mike099 ~]$

在分配节点时,我可以将这些信息重定向到文本文件吗?

我试过像

这样的东西
[abc@mike1 ~]$ qsub -V -I -l walltime=01:00:00,nodes=1:ppn=16 >> 1.txt

它给了我一个错误

qsub:   standard input and output must be a terminal for 
    interactive job submission

2 个答案:

答案 0 :(得分:0)

-o中使用-eqsub选项。我有一段时间没有使用PBS,所以我希望这是正确的参数。

答案 1 :(得分:0)

我问我们的系统经理,他告诉我PBS环境变量可以用来获取这些信息:

PBS_NODEFILE : File containing list of allocated nodes
PBS_O_WORKDIR: Directory from where job is submitted
PBS_O_QUEUE: Queue job was submitted to
PBS_JOBID: Job ID number
PBS_JOBNAME: The name of the job.
PBS_NP: Number of processes requested
PBS_NUM_PPN: Number of processors per node requested
etc

例如,如果我想获取节点的名称,我可以使用

sort $PBS_NODEFILE | uniq

它会返回

mike409
mike410
mike411
mike412