欢迎关注”生信修炼手册”!
environments作为conda的核心组件,用于封装相互独立的软件环境。通过在不同的environment中安装packages,来实现不同软件的相互独立,通过在不同的environments之间进行切换,从而运行不同的packages。
在environments中,有一个基本概念,叫做base environment,可以通过如下命令来查看
conda info --base
其实体是一个目录,在该文件夹下,包含了以下几个目录
1. pkgs, 下载的packages源文件以及解压缩之后的文件夹
2. envs, 新创建的environments
3. bin, 可执行程序
4. include, packages依赖的头文件
5. lib, packages依赖的动态链接库
6. share,存放共用的软件包
除了pkgs和envs目录是base environment文件夹独有的,其他几个文件夹在所有的envrionments目录下都会存在。
对于environments, 常用的有以下几种操作
1. 创建
通过create子命令来创建一个新的env, 命令如下
conda create -n myenv numpy
-n参数指定要创建的env的名称,接下来的参数指定要安装的packages,除了在创建env的同时指定安装包,也可以创建好之后,再进行安装,命令如下
conda create -n myenv
2. 使用
当我们创建好一个env之后,需要切换进去,才可以在里面操作,包括安装和使用packages, 典型的使用一个env的过程如下
-
# 切换进去
-
conda activate myenv
-
# 安装包
-
conda install scipy
-
# 退出
-
conda deavtivate
3. 迁移
当我们想要将一个conda的env在不同服务器之间迁移时,有以下两种方式,第一种是导出该env的所有安装包信息,然后再另外的服务器上根据这个配置文件重新下载生成一个env, 用法如下
-
# 生成environment.yml文件
-
conda env export > environment.yml
-
# 根据environment.yml文件创建新的env
-
conda env create -f environment.yml
这种方式的最大特点是适合不同操作系统的conda迁移,因为保留的是包的信息,下载的时候会根据操作系统自动下载对应的包。
第二种适用于相同操作系统平台的迁移,用法如下
-
# 生成spec文件
-
conda list --explicit > spec-file.txt
-
# 根据spec文件生成新的env
-
conda create --name myenv --file spec-file.txt
4. 复制
有时我们需要在某个env的基础上安装新的包,然后另存为一个新的env, 因为这样可以避免基础包的重复安装,此时可以先复制env, 再安装包,用法如下
conda create --name myclone --clone myenv
5. 删除
对于经常不用的env,为了节省磁盘空间,可以进行删除,用法如下
conda remove --name myenv --all
通过以上几条基础命令,就可以熟练掌握environments的常见用法。
·end·
—如果喜欢,快分享给你的朋友们吧—
原创不易,欢迎收藏,点赞,转发!生信知识浩瀚如海,在生信学习的道路上,让我们一起并肩作战!
本公众号深耕耘生信领域多年,具有丰富的数据分析经验,致力于提供真正有价值的数据分析服务,擅长个性化分析,欢迎有需要的老师和同学前来咨询。
更多精彩
写在最后
转发本文至朋友圈,后台私信截图即可加入生信交流群,和小伙伴一起学习交流。
扫描下方二维码,关注我们,解锁更多精彩内容!
一个只分享干货的
生信公众号
转载:https://blog.csdn.net/weixin_43569478/article/details/111056087