我正在尝试使用集群配置在python脚本中运行sankemake
,其中myoutput/output.txt
是我的输出结果之一:
cluster = """ "qsub -A {cluster.account} -l walltime={cluster.time} -q {cluster.queue} -l nodes=1:ppn={cluster.nCPUs} -l mem={cluster.memory}" """
subprocess.run(['snakemake', '-p', "myoutput/output.txt", '-j 200', '--cluster-config', cluster_config, '--cluster', cluster])
我有此错误:
/bin/sh: qsub -A proj_A -l walltime=72:00:00 -q analysis -l nodes=1:ppn=20,mem=30G: command not found
[我看到snakemake提交到了/bin/sh
,其中qsub
实际上在/usr/bin/qsub
中。
任何想法如何解决它还是有更好的实现方法?
谢谢
因此,我认为我需要根据文档建议将双引号的群集传递给--cluster
标志,所以我使用了。
cluster = """ "qsub -A {cluster.account} -l walltime={cluster.time} -q {cluster.queue} -l nodes=1:ppn={cluster.nCPUs} -l mem={cluster.memory}" """
但实际上,当我以这种方式使用时,会导致错误:
cluster = "qsub -A {cluster.account} -l walltime={cluster.time} -q {cluster.queue} -l nodes=1:ppn={cluster.nCPUs} -l mem={cluster.memory}"
它应该运行。