我注意到我的备份rsync脚本花了很多时间从.snakemake/metadata
个文件夹中复制带有随机名称的内容。
这些文件用于什么?
我可以在蛇形运行完成后安全擦除它们,还是必须让snakemake正确执行下一次运行?
更一般地说,是否有一些关于snakemake在.snakemake
文件夹中创建的文件的文档?
答案 0 :(得分:4)
来自this comment by Johannes Koster,Snakemake的创造者:
[.snakemake /目录]用于跟踪(a)的值 每个文件的版本关键字,(b)每个文件的规则实现 文件,以便在发生变更时通知用户 使用--summary调用snakemake。
来自Google网上论坛的相关comment:
通常,删除整个.snakemake目录是安全的 没有正在运行的Snakemake实例,你确信这一切 现有的输出文件已完成。它只包含数据来源 信息(例如,跟踪代码输入文件或参数更改[以确定是否应重新运行工作流程])。您 可能想保留.snakemake / conda,因为它包含conda 工作流程中使用的环境。
编辑:要在成功执行管道后自动删除.snakemake/
目录,可以使用onssuccess
挂钩:
import shutil
onsuccess:
shutil.rmtree(".snakemake")
答案 1 :(得分:0)
现在是旧问题,并没有真正回答...由于您提到rsync
,因此可以使用.snakemake
选项跳过--exclude
目录,例如:
rsync ... --exclude='.snakemake' source/ dest/