snakemake 规则不会 运行 完整的命令

snakemake rule won't run the complete command

我正在开发这个 snakemake 管道,其中最后一条规则如下所示:

rule RunCodeml:
input:
                '{ProjectFolder}/{Fastas}/codeml.ctl'
        output:
                '{ProjectFolder}/{Fastas}/codeml.out'
        shell:
                'codeml {input}'

此规则不 运行 并且错误似乎是程序 codeml 找不到 .ctl 文件,因为它查找不完整的路径:'/work_beegfs/sunam133/Anas_plasmids/Phylo_chromosome/Acinet_only/Klebs_Esc_SCUG/cluster_536/co' 虽然命令似乎是正确的:

shell:
        codeml /work_beegfs/sunam133/Anas_plasmids/Phylo_chromosome/Acinet_only/Klebs_Esc_SCUG/cluster_536/codeml.ctl
        (one of the commands exited with non-zero exit code; note that snakemake uses bash strict mode!)'

这里是 运行 -p 选项的输出:

error when opening file /work_beegfs/sunam133/Anas_plasmids/Phylo_chromosome/Acinet_only/Klebs_Esc_SCUG/cluster_1083/co
tell me the full path-name of the file? Can't find the file.  I give up.

我觉得这种行为很奇怪,我不明白这是怎么回事。任何帮助,将不胜感激。 谢谢! D.

好的,所以问题不是 snakemake,而是我正在调用的程序 (codeml),它在作为控制文件路径给出的字符串的长度上受到限制。