无法在Snakemake中执行bash脚本

问题描述 投票:0回答:1

这是我在Snakemake上的第一个问题,因为现有的资源和论坛极大地帮助了我解决了我的大部分问题。

我目前遇到的问题是,尽管我能够在命令行上执行相同的bash脚本,但我无法在Snakemake中执行bash脚本

这是我如何在命令行上成功运行bash脚本的方法

bash scripts/genome_coverage.sh -m results/mapped_reads -o final_out.txt

但是当我在Snakemake中运行它时,我得到了错误。

这里是Snakefile中与正在执行的bash脚本相对应的规则

rule genome_coverage:
    input:
        "results/mapped_reads"
    output:
        "genome_coverage.txt"
    script:
        "scripts/genome_coverage.sh -m {input} -o {output}"

这是我得到的错误。我不知道我在做什么错]

Error in rule genome_coverage:
    jobid: 16
    output: genome_coverage.txt
RuleException:
NameError in line 153 of /Illumina-mRNA/Snakefile:
The name 'input' is unknown in this context. Please make sure that you defined that variable. Also note that braces not used for variable access have to be escaped by repeating them, i.e. {{print $1}}
bash snakemake
1个回答
0
投票

您需要将script替换为shell

rule genome_coverage:
    input:
        "results/mapped_reads"
    output:
        "genome_coverage.txt"
    shell:
        "scripts/genome_coverage.sh -m {input} -o {output}"
© www.soinside.com 2019 - 2024. All rights reserved.