conda
conda 的可用命令如下:
usage: conda-script.py [-h] [-V] command ...
conda是用于管理和部署应用程序、环境和程序包的工具
Options:
positional arguments:
command
clean 删除未使用的包和缓存
config 修改.condarc文件中的配置值
create 从指定的package列表中创建一个新的conda环境
help 显示可用的conda命令及其帮助字符串的列表
info 显示有关当前安装的conda的信息
init 初始化conda以进行shell交互 [实验性功能]
install 把一个列表中包含的包安装到指定的conda环境
list 列出链接到某个conda环境的所有包名
remove 从指定的conda环境移除列表中包含的包
uninstall conda remove的别名
run 在 conda 环境中运行可执行文件 [实验性功能]
search 搜索package并显示相关信息。输入是MatchSpec语句(conda软件包的查询语言)
update 将 conda 包更新为最新的兼容版本
upgrade conda update的别名
optional arguments:
-h, --help
-V, --version
conda命令
conda info
该命令可以查看当前安装的 conda 的详细信息,包括 conda 版本、python 版本、软件包仓库地址、新建环境的存放路径等。
usage: conda-script.py info [-h] [--json] [-v] [-q] [-a] [--base] [-e] [-s]
[--unsafe-channels]
Display information about current conda install.
Options:
optional arguments:
-h, --help
-a, --all 显示所有信息
--base 显示 base 环境的路径
-e, --envs 列出所有已知的Conda环境
-s, --system 列出环境变量
--unsafe-channels 列出暴露token的channel
Output, Prompt, and Flow Control Options:
--json 以json格式输出,适合以编程方式使用conda的情况
-v, --verbose 输入一次用于info,两次用于debug,三次用于trace
-q, --quiet 不显示进度条
conda create
usage: conda-script.py create [-h] [--clone ENV] [-n ENVIRONMENT | -p PATH]
[-c CHANNEL] [--use-local] [--override-channels]
[--repodata-fn REPODATA_FNS]
[--strict-channel-priority]
[--no-channel-priority]
[--no-deps | --only-deps] [--no-pin] [--copy]
[--no-shortcuts] [-C] [-k] [--offline] [-d]
[--json] [-q] [-v] [-y] [--download-only]
[--show-channel-urls] [--file FILE]
[--no-default-packages] [--dev]
[package_spec [package_spec ...]]
Create a new conda environment from a list of specified packages.
Options:
positional arguments:
package_spec 在新conda环境需要安装或更新的包
optional arguments:
-h, --help
--clone ENV 通过克隆其他环境来创建一个新环境,'ENV'可以是本地环境的路径或名称
--file FILE 从文件创建环境,可传入多个文件(e.g. --file=file1 --file=file2)
--dev 使用'sys.executable -m conda'而不是CONDA_EXE,主要用于测试
Target Environment Specification:
-n ENVIRONMENT, --name ENVIRONMENT
新环境的名字
-p PATH, --prefix PATH
环境目录的完整路径
Channel Customization:
-c CHANNEL, --channel CHANNEL
添加额外的Channel用于搜索包,可指定本地目录。按顺序在指定的Channel
进行搜索,"defaults"和.condarc的Channel会先被搜索,除非提供了
'--override-channels'参数
--use-local 使用本地构建的包,等同于"-c local"
--override-channels 不使用"defaults"和.condarc的Channel
要求提供'--channel'参数
--repodata-fn REPODATA_FNS
Solver Mode Modifiers:
--strict-channel-priority
优先考虑较高优先级的channel的程序包
--no-channel-priority
优先考虑较高版本的软件版,而不考虑channel的优先级
这将覆盖'conda config --show channel_priority'给定的值
--no-deps 不安装、更新、删除或更改依赖性。这将破坏环境,风险自负
--only-deps 仅安装依赖
--no-pin 忽略pinned文件
--no-default-packages
忽略.condarc配置文件的'create_default_packages'设置
Package Linking and Install-time Options:
--copy 使用副本而不是硬链接或软链接来安装所有软件包
--no-shortcuts 不安装开始菜单快捷方式
Networking Options:
-C, --use-index-cache
即使channel的索引文件已过期,也使用其缓存
-k, --insecure 允许conda执行不安全的SSL连接和传输
等效于将'ssl_verify'设置为'false'
--offline 离线模式,不连接网络
Output, Prompt, and Flow Control Options:
-d, --dry-run 仅显示将要完成的操作
--json
-q, --quiet
-v, --verbose
-y, --yes 默许所有操作,不要求确认
--download-only
--show-channel-urls 显示channel的url
覆盖`conda config --show show_channel_urls`的值
conda常用命令
查看信息
# 查看当前安装的 conda 的详细信息
# 其中包括 conda 版本、python 版本、软件包仓库地址、新建环境的存放路径等
conda info
# 查看conda版本信息
conda -V
conda --version
环境管理
查看环境信息
# 查看当前 conda 中所有已创建的环境列表
# 处于激活状态的环境旁边会有一个*的标记
conda env list
conda info --envs
conda info -e
# 查看 Conda 相关的环境变量信息
conda info --system
conda info -s
# 查看环境系统更加详细的信息
conda info --all
conda info -a
激活环境
# 进入指定环境
conda activate <env>
# 退出环境
conda deactivate
导出环境
# 默认导出当前环境的依赖包
conda list -e > package-list.txt
conda list -e > package-list.yml
# 导出指定环境的依赖包
conda list -n <env> -e > package-list.yml
# 或者这样
conda env export --name base --file base_bunnies.yml
## 这会将当前环境中由 conda 管理的包和由 pip 安装的包同时导出到文件中
## 所以当根据文件创建环境时,无需重新安装 pip 的包
创建环境
# 新建一个名为 newenv 的环境,并指定新环境中的 python 版本为3.6
# 创建出来的环境中只带有最基本的包
conda create --name newenv python=3.6
# 也可以在创建环境时候,包含某些程序或者包
conda create --name newenv python=3.6 biopython ipython
# 通过克隆创建一个新环境
conda create --name newenv -clone base
# 从文件创建环境
## 如果是用 conda env export --name 导出的文件,则可用下列命令创建:
conda env create -f package-list.yml
## 如果是用 conda list -e 导出的文件,则用如下方式创建:
conda create --name <env> --file <deps file>
更新环境
# 更新环境
conda env update --name <env> -file=<deps file>
删除环境
# 删除环境中指定的包
conda remove --name <env> ipython biopython
# 彻底删除环境
conda env remove --name <env>
从指定路径安装环境
conda 创建出来的环境默认放在/User/<yourname>/anaconda/env
目录下,你可以将其中的某个环境文件夹整体拷贝走,复制到另一台机器上,然后基于此文件夹创建环境。
包管理
conda list # 查看已经安装的包
conda update conda # 升级conda自身
conda search requests # 查询某个包
conda install requests # 安装新包
conda install -n base requests # 将包安装到指定环境
conda update --all # 更新所有包
conda update requests # 升级包
conda remove requests # 移除包
conda remove -n base requests # 从指定环境中移除包
conda 不提供检查可更新的包的命令,update 所有包时会有提示,列出所有可更新的包,并让用户确认是否全部更新。
为 conda 指定国内镜像源
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --set show_channel_urls yes
使用conda config --show channels
命令可以查看当前的源仓库地址。