Conda命令整理

Conda 是一个功能强大的包和环境管理工具,广泛用于 Python 开发中。除了基本的包和环境管理功能外,Conda 还提供了许多高级用法和技巧,帮助用户更高效地管理和维护 Python 环境。

1. 管理 Conda 本身

命令 描述 示例
conda --version 查看 Conda 版本 conda --version
conda update conda 更新 Conda conda update conda
conda config --show 查看 Conda 配置 conda config --show

2. 管理环境

命令 描述 示例
conda env list 列出所有环境 conda env list
conda create -n <env_name> 创建新环境 conda create -n myenv
conda activate <env_name> 激活环境 conda activate myenv
conda deactivate 退出当前环境 conda deactivate
conda remove -n <env_name> --all 删除环境 conda remove -n myenv --all

3. 包管理

命令 描述 示例
conda list 列出当前环境中的包 conda list
conda install <package_name> 安装包 conda install numpy
conda install <package_name>=<version> 安装指定版本的包 conda install numpy=1.21.0
conda update <package_name> 更新包 conda update numpy
conda remove <package_name> 卸载包 conda remove numpy

4. 环境导出与创建

命令 描述 示例
conda env export > environment.yml 导出环境配置 conda env export > environment.yml
conda env create -f environment.yml 从文件创建环境 conda env create -f environment.yml

5. 设置镜像源

命令 描述 示例
conda config --add channels <channel_url> 添加镜像源 conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --set show_channel_urls yes 显示通道 URL conda config --set show_channel_urls yes

6. 清理缓存

命令 描述 示例
conda clean -p 清理未使用的包缓存 conda clean -p
conda clean -t 清理 tar 包缓存 conda clean -t
conda clean -y --all 清理所有缓存 conda clean -y --all

7. 高级用法和技巧

  • 环境克隆 :当你已经配置好了一个复杂的环境,不想在新项目中重新配置时,可以使用环境克隆功能。假设你有一个名为 source_env 的环境,想要克隆到一个新的环境 new_env,可以使用以下命令:

    bash 复制代码
    conda create --name new_env --clone source_env

    这将创建一个与 source_env 完全相同的新环境 new_env

  • 导出和导入环境:你可以将一个环境的配置信息导出到一个 YAML 文件中,以便在其他机器上或者在未来重新创建这个环境。导出环境的命令如下:

    bash 复制代码
    conda env export > environment.yml

    要导入这个环境,可以使用以下命令:

    bash 复制代码
    conda env create -f environment.yml

    这对于在不同机器之间共享环境配置非常有用。

  • 管理多个渠道:Conda 默认使用 Anaconda 渠道来获取软件包,但有时候你可能需要从其他渠道获取特定的软件包。你可以添加新的渠道,例如:

    bash 复制代码
    conda config --add channels conda-forge

    可以查看当前配置的渠道:

    bash 复制代码
    conda config --show channels

    并且可以删除不需要的渠道:

    bash 复制代码
    conda config --remove channels conda-forge
  • 使用 Conda-Build 构建软件包:如果你需要创建自己的 Conda 软件包,可以使用 Conda-Build 工具。请按照以下步骤操作:

  1. 安装 conda-build 工具 :首先,确保已安装 conda-build。如果尚未安装,可以使用以下命令进行安装:

    bash 复制代码
    conda install conda-build
  2. 创建构建配方(Recipe):在一个目录中创建构建配方,通常包含以下文件:

    • meta.yaml:描述包的元数据,如名称、版本、依赖关系等。
    • build.sh:用于 Unix 系统的构建脚本,包含构建和安装指令。
    • bld.bat:用于 Windows 系统的构建脚本,包含构建和安装指令。

    例如,meta.yaml 文件的内容可能如下:

    yaml 复制代码
    package:
      name: mypackage
      version: 0.1
    
    source:
      path: ./path_to_source
    
    build:
      number: 0
    
    requirements:
      build:
        - python
        - setuptools
      run:
        - python
        - numpy
    
    test:
      commands:
        - python -c "import mypackage"
    
    about:
      home: https://github.com/username/mypackage
      license: MIT
      summary: 'A brief description of my package'

    build.sh 中,通常包含以下内容:

    bash 复制代码
    #!/bin/bash
    
    $PYTHON setup.py install --single-version-externally-managed --record=record.txt

    请根据实际情况调整上述文件内容。

  3. 构建软件包:在包含上述构建配方的目录中,运行以下命令进行构建:

    bash 复制代码
    conda build .

    构建成功后,生成的 .tar.bz2 包文件将位于 conda-bld 目录下。

  4. 安装构建的软件包:可以使用以下命令在本地安装构建的软件包:

    bash 复制代码
    conda install --use-local mypackage

    这将从本地构建的包中安装 mypackage

  5. 上传软件包到 Anaconda Cloud:如果希望将构建的软件包上传到 Anaconda Cloud,以便他人使用,可以使用以下命令:

    bash 复制代码
    anaconda upload /path/to/conda-bld/osx-64/mypackage-0.1-py38_0.tar.bz2

    请将 /path/to/conda-bld/osx-64/mypackage-0.1-py38_0.tar.bz2 替换为实际的包文件路径。

相关推荐
drebander3 小时前
创建和管理 Conda 环境:环境隔离与依赖管理
python·conda·anaconda
dkgee1 天前
conda将python低版本环境升级到高版本
开发语言·python·conda
A&long@20201 天前
【AI时代】-开发环境准备 之 Conda 创建 Python 环境 (含pip常用命令、jupyter 安装及汉化、自定义文档位置等配置)
人工智能·python·conda
浅若红尘3 天前
ubuntu conda运行kivy时报“No matching FB config found”
linux·ubuntu·conda
啊拉丁的鱼5 天前
使用conda创建自己的python虚拟环境,与其他python版本独立区分
开发语言·python·conda
老大白菜8 天前
在 Ubuntu 中使用 Conda 创建和管理虚拟环境
linux·ubuntu·conda
picked stone11 天前
conda配置channel
conda
广药门徒11 天前
Anaconda使用教程 如何conda配置多版本Python环境
开发语言·python·conda
电棍23312 天前
vscode+WSL2(ubuntu22.04)+pytorch+conda+cuda+cudnn安装系列
人工智能·pytorch·conda