【发布时间】:2021-09-27 18:03:54
【问题描述】:
我在 conda 环境中使用 Snakemake。在我的蛇文件的开头,我有一个“日志规则”,它保存了运行信息。其中一个信息是哪些工具是环境的一部分 (conda list >> log.file)。
rule logRule:
params:
runID
output:
cfgLocation+runID+"_runParams.txt"
priority: 1
shell:
"""
echo {params} >> {output}
date >> {output}
cat Snakefile >> {output}
echo "-----___----____---____---____-----" >> {output}
conda list >> {output}
"""
这可能不是最优雅的方式,但它适用于其他环境。但是,在当前它说它找不到命令“conda”。但是,直接运行 conda list 确实可以正常工作(我也调用 snakemake -p --cores 8 的同一 shell 会话。
在寻找原因的过程中,我还发现ll 命令(别名为ls -l)也找不到。
我认为snakemake使用当前活动的conda env,如果直接运行它可以在env中工作,我什至不知道如何寻找解决方案。
任何建议来自哪里,以及如何解决这个问题,我们将不胜感激。
【问题讨论】: