rule bcftools_call:
input:
fa="data/ucsc.hg19.fasta",
bam=expand("sorted_reads/{sample}.bam", sample=SAMPLES),
bai=expand("sorted_reads/{sample}.bam.bai", sample=SAMPLES)
output:
"calls/all.vcf"
shell:
"bcftools mpileup -f {input.fa} {input.bam} |"
" bcftools call -mv - > {output}"运行此规则时,会出现错误
CalledProcessError in line 37 of/public/home/wangdl/duolin_work_dir/test/snakemake/snakefile.smk:
Command ' set -euo pipefail; bcftools mpileup -f data/ucsc.hg19.fasta sorted_reads/A.bam sorted_reads/B.bam | bcftools call -mv - > calls/all.vcf ' returned non-zero exit status 1.但是,如果我在CLI中运行这个命令,它工作得很好
set -euo pipefail; bcftools mpileup -f data/ucsc.hg19.fasta sorted_reads/A.bam sorted_reads/B.bam | bcftools call -mv - > calls/all.vcf注意:没有给定-- samples -file、--ploidy或--ploidy-file,假设所有站点都是2个输入文件中的2个样本
那为什么呢?
发布于 2021-11-09 11:35:20
要排除故障,请尝试将管道拆分为两个命令,并查看其中是否有任何命令失败。例如,像这样:
shell:
r"""
bcftools mpileup -f {input.fa} {input.bam} > {output}.tmp
bcftools call -mv {output}.tmp > {output}"
rm {output}.tmp
""""https://stackoverflow.com/questions/69880852
复制相似问题