如何将作业ID与规则shell脚本

时间:2017-11-29 14:50:56

标签: snakemake

我刚刚完成了snakemake的bowtie2对齐工作。 但是如你所知,bowtie2输出一个对齐摘要:

23774776 reads; of these:
  23774776 (100.00%) were paired; of these:
    5928889 (24.94%) aligned concordantly 0 times
    17845887 (75.06%) aligned concordantly exactly 1 time
    0 (0.00%) aligned concordantly >1 times
    ----
    5928889 pairs aligned concordantly 0 times; of these:
      1214536 (20.49%) aligned discordantly 1 time
    ----
    4714353 pairs aligned 0 times concordantly or discordantly; of these:
      9428706 mates make up the pairs; of these:
        6563535 (69.61%) aligned 0 times
        2843810 (30.16%) aligned exactly 1 time
        21361 (0.23%) aligned >1 times
86.20% overall alignment rate

本摘要见以下文件:

snakejob.align.601.sh.e6589895
snakejob.align.602.sh.e6591632
snakejob.align.603.sh.e6591988
snakejob.align.604.sh.e6591623
snakejob.align.605.sh.e6591927
snakejob.align.606.sh.e6591628
snakejob.align.607.sh.e6590473
snakejob.align.608.sh.e6591280
snakejob.align.609.sh.e6590190
snakejob.align.610.sh.e6590903

摘要中没有样本名称。我认为snakejob id(6 **)可能与样本名称存在关系。

我检查了隐藏文件夹.snakemake / metadata中的文件,文件中的消息如下:

{"rule": "PE", "shellcmd": "/soft/samtools/samtools view -bF 12 /home/RAD/01align/out/R40.bam > /home/RAD/01align/out/R40.PE.bam && echo '3 done'", "params": [], "version": null, "incomplete": false, "input": ["/home/RAD/01align/out/R40.bam"], "code": "gAMoQxR0AABkAQBkAgB8CgCDAQEBZAAAU3EAKFgFAAAAaW5wdXRxAVgGAAAAb3V0cHV0cQJYBgAAAHBhcmFtc3EDWAkAAAB3aWxkY2FyZHNxBFgHAAAAdGhyZWFkc3EFWAkAAAByZXNvdXJjZXNxBlgDAAAAbG9ncQdYBwAAAHZlcnNpb25xCFgEAAAAcnVsZXEJWAkAAABjb25kYV9lbnZxClgMAAAAYmVuY2hfcmVjb3JkcQt0cQxdcQ0oTlhYAAAAL25mcy9iaW9zb2Z0L3NhbXRvb2xzL3NhbXRvb2xzIHZpZXcgLWJGIDEyIHtpbnB1dC5iYW19ID4ge291dHB1dC5QRWJhbX0gJiYgZWNobyAnMyBkb25lJ3EOaAtlWAUAAABzaGVsbHEPhXEQdHERLg==", "log": []}

代码部分可能包含一些帮助信息,以便我获取样本名称。但我不知道如何生成这些代码值。

我希望有人可以帮助我。

1 个答案:

答案 0 :(得分:1)

对此的可移植解决方案是为规则指定日志文件。见the docs。另请参阅Snakemake workflows project中的最佳实践工作流程。