conda - Snakemake conda env 路径和 Homer annotatePeaks.pl
问题描述
我想从我自己定义的 yaml 环境中使用 HOMER annotatePeaks.pl ( http://homer.ucsd.edu/homer/ngs/annotation.html )。我需要得到这个 Perl 脚本:
perl /home/rj/miniconda3/envs/metylace/share/homer/.//configureHomer.pl -install hg19
我的 miniconda3 路径将是 conda env 路径。是否可以?有没有办法匹配当前规则和 conda env 哈希?
长话短说:有一个包装,但我对其他方式很好奇。包装器使用选项来指定 fasta 文件,但 HOMER 具有下载引用本身的能力。但是,在此之前我调用了一个 perl 脚本并下载了它。但是这个 Perl 脚本位于 conda env 路径中的某个位置,并且 conda 不使用名称,而是使用哈希值。怎么做?
解决方案
由于 Snakemake 会激活环境,因此应该可以使用CONDA_PREFIX
环境变量来定位目录。另一个问题是该share/homer/
目录似乎是特定于版本的。例如,我看到share/homer-4.11-0
. 只要只有一个 - 我认为这是一个公平的假设 - 你应该能够逃脱:
perl $CONDA_PREFIX/share/homer*/configureHomer.pl -install hg19
推荐阅读
- yarnpkg - 从缓存中获取时完整性不正确
- python - 检查时间戳是否在两列之间
- dax - 一个月内重复
- java - Spring Rest API TransactionSystemException
- javascript - firebase 的调整大小扩展完成后获取下载网址
- java - 使用java插入数据时pdf文件中的数据覆盖
- feathersjs - 需要在feathersjs中添加多于usernameField
- c# - .NET Core 3 中的 DLLExport 用于非托管 C/C++ 代码
- progressive-web-apps - 获取 TypeError:无法在渐进式 Web 应用程序中获取
- php - 如何在 PHP 应用程序中使用 Symfony 路由组件从 .yaml 和通过注解注册路由