问题描述
我在Stackoverflow上看到了与此类似的问题,但是抱歉,我无法解决它。
我正在使用一条蛇形管道中的规则之一对fasta文件进行一些操作:
rule prep_headers:
input:
"reads_prepped/{sample}_good.fasta"
output:
"reads_prepped/{sample}_prepped.fasta"
shell:
"source bin/functions.sh; trimheaders {input} 50 | makeidsuniq > {output}"
function trimheaders() {
cat $1 | awk -v max=${2} "{if(\$0~\">\"){printf(\"%s\n\",substr(\$1,1,max))}else{print \$0}}";
}
function makeidsuniq() {
perl -pe 's/$/_$seen{$_}/ if ++$seen{$_}>1 and /^>/; ' $1 ;
}
Snakemake但是此规则有误:
Error in rule prep_headers:
jobid: 0
output: reads_prepped/Horizontal_prepped.fasta
shell:
source bin/functions.sh; trimheaders reads_prepped/Horizontal_good.fasta 50 | makeidsuniq > reads_prepped/Horizontal_prepped.fasta
(one of the commands exited with non-zero exit code; note that snakemake uses bash strict mode!)
Removing output files of Failed job prep_headers since they might be corrupted:
reads_prepped/Horizontal_prepped.fasta
Shutting down,this might take some time.
Exiting because a job execution Failed. Look above for error message
奇怪的是,如果我接着将上面显示的命令直接复制并粘贴到终端中,它就可以正常工作...
我已经尝试按照其他帖子的建议设置+ o pipefail,但这并不能解决问题。
有什么想法吗?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)