访问不在bin/中的conda环境资产



我在工作流程中使用了一些conda-env,其中包含环境bin/path中而非的有用资产(数据、模型等(,例如share/、opt/或其他下的特定文件
是否有标准的方法从工作流中访问这些路径?也许是一个包含环境路径的变量?否则,我会发现自己在使用各种Linux技巧来定位这些文件。比如:

rule snap:
...
conda:
snap.yaml
shell:
"""
# find env dir
env=`grep -l snap ./.snakemake/conda/*.yaml | xargs basename | sed 's/.yaml//'`
snap ./.snakemake/conda/$env/share/HMM/X.hmm {input}
"""

关于如何处理此类案件,有什么想法吗?

变量$CONDA_PREFIX包含当前激活环境的路径。从那里应该很容易进入shareopt

如果这没有帮助,试着发布你的设置目录树和你想访问的内容,因为它还不完全清楚,至少对我来说是这样

最新更新