防止snakemake制作输出目录
Prevent snakemake from making output directory
有没有办法阻止 snakemake 为尚不存在的输出创建目录?
fimo
如果目录已经存在,MEME 套件中的
fimo
会在 运行 的末尾恼人地失败。
我的解决方法是给 fimo
一个不同于我在 output
中指定的输出目录,但想知道是否有更多 straightforward/elegant 解决方案。
给出的例子:
rule generate_scan:
output:
PROJECT_BASE + '/results/fimo_scan/fimo.txt'
params:
genome = '/home/hjp/ImmuneProject/hg19_reference/hg19.fa',
motif_database = PROJECT_BASE + '/motif_databases/HUMAN/HOCOMOCOv10_HUMAN_mono_meme_format.meme',
tmp = 'results/tmp_fimo'
shell:
'/home/hjp/meme/bin/fimo'
' -o {params.tmp}'
' --motif GATA2_HUMAN.H10MO.A'
' {params.motif_database}'
' {params.genome}'
' && '
'mv {params.tmp}/* {PROJECT_BASE}/results/fimo_scan/'
' && '
'rm -rf {params.tmp}'
提前致谢!
目前,您无法在 Snakemake 中直接阻止这种情况(大多数工具宁愿反过来抱怨)。但是,我只是在 fimo 的实际调用前加上输出目录上的 rm -r
。
有没有办法阻止 snakemake 为尚不存在的输出创建目录?
fimo
如果目录已经存在,MEME 套件中的
fimo
会在 运行 的末尾恼人地失败。
我的解决方法是给 fimo
一个不同于我在 output
中指定的输出目录,但想知道是否有更多 straightforward/elegant 解决方案。
给出的例子:
rule generate_scan:
output:
PROJECT_BASE + '/results/fimo_scan/fimo.txt'
params:
genome = '/home/hjp/ImmuneProject/hg19_reference/hg19.fa',
motif_database = PROJECT_BASE + '/motif_databases/HUMAN/HOCOMOCOv10_HUMAN_mono_meme_format.meme',
tmp = 'results/tmp_fimo'
shell:
'/home/hjp/meme/bin/fimo'
' -o {params.tmp}'
' --motif GATA2_HUMAN.H10MO.A'
' {params.motif_database}'
' {params.genome}'
' && '
'mv {params.tmp}/* {PROJECT_BASE}/results/fimo_scan/'
' && '
'rm -rf {params.tmp}'
提前致谢!
目前,您无法在 Snakemake 中直接阻止这种情况(大多数工具宁愿反过来抱怨)。但是,我只是在 fimo 的实际调用前加上输出目录上的 rm -r
。