我有一个包含10个子目录(dir01到dir10)和每个子目录中若干文件的目录(每天都会向子目录添加新文件)。
我正在尝试编写一个snakemake文件,它将遍历所有子目录和所有文件并处理它们(运行我的convert.exe可执行文件以将我的.Stp文件转换为.Xml文件)。处理后的文件将移动到一个新目录,但是进入与之前相同名称的子目录和相同的文件名。
因此,例如最终作业流应类似于以下内容:
任何关于如何进行此操作的帮助将不胜感激!谢谢!
我正在尝试编写一个snakemake文件,它将遍历所有子目录和所有文件并处理它们(运行我的convert.exe可执行文件以将我的.Stp文件转换为.Xml文件)。处理后的文件将移动到一个新目录,但是进入与之前相同名称的子目录和相同的文件名。
因此,例如最终作业流应类似于以下内容:
/data01/dir01/Sample1.Stp --> processed by convert.exe --> /data01/temp/dir01/Sample1.xml
我希望能将这个任务分配到我可以访问的12个CPU上并行运行。
我刚开始使用snakemake,并完成了一些教程,但是现在有点迷失方向。
以下是我目前的代码: 它没有正常工作,而且我也不确定这是否是正确的方法。 这只是第一部分 - 只是尝试循环遍历目录和文件(还未尝试转换或并行运行)。
directories = glob_wildcards("/data01/{dir}")
files = glob_wildcards("/data01/{dir}/{file}")
rule all:
input:
expand("/data01/temp/{dir}/{file}.moved.Stp", dir=directories, file=files)
rule sort:
input:
"/data01/{dir}/{file}.Stp"
output:
"/data01/temp/{dir}/{file}.moved.Stp"
shell:
"..."
任何关于如何进行此操作的帮助将不胜感激!谢谢!