我正在尝试从qsub调用运行一些samtools命令(在集群上运行)。由于某种原因,似乎无法识别命令。但是,如果我复制粘贴命令并直接从终端群集运行它,它可以正常工作。有没有人遇到过这样的问题或者知道我做错了什么? 谢谢,
帕特里克
我的qsub(这不起作用):
#!/bin/bash
#./etc/sysconfig/pssc
#PBS -S /bin/bash
#PBS JOB_NAME="QSH_$(whoami)"
#PBS NODE_NUM="1"
#PBS NODE_PPN="${NODE_NCPUS}"
#PBS HOURS="24"
#PBS MINUTES="00"
#PBS SECONDS="00"
#PBS WALLTIME=${HOURS}:${MINUTES}:${SECONDS}
#PBS RES_LIST="nodes=${NODE_NUM}:ppn=${NODE_PPN}"
#PBS DIR_WORK="${PBS_O_WORKDIR}"
#PBS QUEUE="high"
#PBS cd ${DIR_WORK}
samtools index /data/test.bam /data/test.bai
如果我直接从终端运行命令,它可以工作:
samtools index /data/test.bam /data/test.bai
答案 0 :(得分:0)
你还记得cd
进入你的工作目录吗?我不相信qsub
扩展$
变量,例如PBS cd ${DIR_WORK}
。
尝试使用此脚本:
#!/bin/bash
#./etc/sysconfig/pssc
#PBS JOB_NAME=test
#PBS WALLTIME=24:00:00
cd ${PBS_O_WORKDIR}
echo `pwd`
dir