如何获取工作目录路径?
问题描述:
我想知道如何管理我的Snakefiles中的路径。说我有这个配置:如何获取工作目录路径?
current_dir
current_dir/snakefiles
current_dir/configfiles
,我执行我的工作流程是这样的:
current_dir$ snakemake -s snakefiles/my_snakefile --configfile configfiles/my_config.yml
我知道我可以使用全局变量workflow.snakefile
获取路径到我的Snakefile,但我想获得也:
- 的路径,我CONFIGFILE
- 所在的路径,我执行我的snakefile,如
current_dir
如何实现这一目标? Snakemake中是否还有其他全局变量,我不知道?
谢谢
答
工作目录通过Python设置。你可以用os.getcwd()
得到它。另请注意,有一种规范的方式来组织Snakemake工作流程:http://snakemake.readthedocs.io/en/latest/project_info/faq.html#what-is-the-recommended-way-to-distribute-a-snakemake-workflow。
虽然你当然可以使用别的东西,但遵循这个方案可以帮助他人理解你的工作流程。当然可能有这种情况不适合。
谢谢,事实上我的组织有点不同。我将配置文件,工作流和规则分开。给定的工作流程可以使用不同的配置文件运行,并且一个配置文件可以被不同的工作流程使用。这就是为什么我希望能够在任何地方(在工作流和规则中)获得配置文件路径。 – rioualen