Snakemake - 删除工作流程生成的所有非输出文件

标签 snakemake

我有一个生成大量文件的工作流程,其中大多数不是任何规则的输出(它们是中间结果)。我希望可以选择在工作流程完成后删除所有不是任何规则输出的内容。这对于归档很有用。
目前,我发现做到这一点的唯一方法是将所有规则的所有输出定义为 protected ,然后运行snakemake --delete-all-output。两个问题:
1. 这是可行的方法,还是有更好的解决方案?
2. 有没有办法自动将所有输出定义为 protected ,或者我是否必须遍历整个代码并用 protected() 包装所有输出?

谢谢!

最佳答案

也许选项 --list-untracked有帮助吗?

  --list-untracked, --lu
                        List all files in the working directory that are not
                        used in the workflow. This can be used e.g. for
                        identifying leftover files. Hidden files and
                        directories are ignored.

关于Snakemake - 删除工作流程生成的所有非输出文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60964823/

相关文章:

python - 在 Snakemake 工作流程中作为输入的值数组

python - Snakemake 通配符仅在输出中

python - scriptExit 1 与 pybedtools venn_mpl - snakemake 5.2.4

python - Snakemake:如何防止不明确的规则同时被执行?

python - snakemake:访问字典值的正确语法

snakemake - 是否可以在蛇形试运行中打印命令而不是规则?

docker - 如何将snakemake容器用于htslib(bgzip + tabix)

snakemake - 如何定位包含通配符的中间 Snakemake 规则

python - Snakemake SGE集群提交问题

python - 更新中间文件时防止规则重新运行