0%

基于conda的软件管理

最新更新日期:2022/10/24

利用conda软件进行软件的管理,包括安装,删除,更新与使用。

conda命令的基本格式

1
2
3
4
conda/mamba subcommand XXX...
#conda/mamba,为主命令,conda是默认管理器,mamba是conda的优化版,本文命令均以mamba为例;
#subcommand,为子命令,例如create为创建环境,install为安装软件等等;
#XXX...,为其他参数,例如 -n 环境名 等等。

常用子命令一览:

子命令 作用 举例
create 创建环境 mamba create -n demo
mamba create -n demo samtools
install 安装软件 mamba install -n demo samtools
install 删除软件 mamba remove -n demo samtools
update 更新软件 mamba update -n demo samtools
activate 激活环境 mamba activate demo
deactivate 退出环境 mamba deactivate

创建环境

使用mamba create创建环境:

1
2
#创建一个空环境:
mamba create -y -n demo

也可以使用mamba create在创建环境的同时安装软件

1
2
#创建环境并安装软件
mamba create -y -n demo samtools

安装软件

mamba install安装软件到一个环境中。

1
2
#安装软件到已有的环境下
mamba install -y -n demo samtools

删除软件

1
mamba remove -n biotools seqkit 

更新软件

1
mamba update -n demo samtools 

使用软件

已安装的软件在对应环境下可以直接调用,一般包括三个步骤:1. 先激活环境;2. 使用软件;3. 退出环境。

graph LR;
a(激活软件对应的环境
mamba activate demo) --> b1 b1(使用软件
samtools faidx ...)-->b2(...) --> c(退出环境
mamba deactivate
或直接关闭终端)

应用实例

为了方便理解,以samtools为例,演示软件的安装与使用等过程。

samtools软件是处理序列与比对文件的一款综合软件,本练习借用faidx命令,计算fasta文件的序列长度。

测试文件下载

fasta格式的蛋白质序列文件

1
wget https://gitee.com/stonehawk/pubSource/raw/master/prot.fa

samtools安装

创建一个名为demo的空环境,同时在环境内安装samtools

1
mamba create  -y -n demo samtools 

samtools的使用

先激活samtools软件对应的环境:

1
mamba activate demo

然后,直接输入需要执行的命令:

1
samtools faidx prot.fa

命令中:

  • samtools为命令名,faidxsamtools的子命令,为fasta文件创建索引(index)
  • 在结果索引文件的第二列就是序列长度

在fasta的同目录下,会产生 prot.fa.fai文件。可以用Excel或者notepad++等文本编辑器打开文件,查看第二列长度信息。

退出环境

1
mamba deactivate

删除软件/环境

仅删除软件:

1
mamba remove -n demo samtools

删除整个环境:

1
mamba remove -n demo -a

更新samtools软件版本

更新至最新版:

1
mamba update -n demo samtools

或者通过安装时指定版本号实现:

1
mamba install -n demo samtools=1.6

如果不知道哪些版本号,可以用

1
mamba search samtools