我想使用snakemake一个接一个地运行多个规则。但是,当我运行这个脚本时,bam_list 规则出现在 samtools_markdup 规则之前,并给我一个错误,它找不到输入文件,这些文件显然还没有生成。如何解决这个问题呢?
rule all:
input:
expand("dup/{sample}.dup.bam", sample=SAMPLES)
"dup/bam_list"
rule samtools_markdup:
input:
sortbam ="rg/{sample}.rg.bam"
output:
dupbam = "dup/{sample}.dup.bam"
threads: 5
shell:
"""
samtools markdup -@ {threads} {input.sortbam} {output.dupbam}
"""
rule bam_list:
output:
outlist = "dup/bam_list"
shell:
"""
ls dup/*.bam > {output.outlist}
"""