conda的一些常用命令

2023-11-01

参考博客

我们可以在命令行中或者anaconda prompt中执行命令进行操作。



常用命令留存
conda create -n Python27 python=3.7
conda create -n new_env --clone original_env
conda search <PIL>
conda info`可以用来查看相关信息

conda update conda #升级conda
conda update anaconda #升级anaconda前要先升级conda
conda update --all #升级所有包

在升级完成之后,我们可以使用命令来清理一些无用的包以释放一些空间:
conda clean -p #删除没有用的包
conda clean -t #删除保存下来的压缩文件(.tar)
虚拟环境
conda list命令用于查看conda下的包,而conda env list命令可以用来查看conda创建的所有虚拟环境。

使用如下命令,可以创建一个新的环境:
conda create -n Python27 python=2.7
其中Python27是自定义的一个名称,而python=2.7是一个格式,可以变动等号右边的数字来改变python环境的kernel版本,这里我们安装的是python2.7版本
在anaconda prompt中,我们可以看到我们处在的是base环境下,也就是我安装的python3环境下,我们可以使用下面两个命令来切换环境:

虚拟环境切换
conda activate 环境名
虚拟环境退出
conda deactivate 环境名

删除环境
conda remove -n 名字 --all
比如conda remove -n python35 --all

重命名环境
conda create -n 新名字 --clone 老名字
conda remove -n 老名字 --all

看conda源
conda config --show-sources

conda寻找包名的版本
conda search <PIL>

conda info 可以用来查看相关信息,其格式如下:

conda info [-a] [–base] [-e] [-s] [–unsafe-channels]

-a, -all: 查看所有信息(不常用)

–base:查看基环境所在路径

conda info --base

-e, --envs:列出当前所有的 conda 环境

conda info -e

-s, --system:列出所有的环境变量(不常用)

–unsafe-channels:查看令牌公开的频道

conda info --unsafe-channels

————————————————————————————————
conda create 可以用来创建新的 conda 环境,其格式如下:

conda create [-n env_name | -p path] [–clone env_name] [-c channel_address] [packages]

-n, --name:我们可以根据环境名称来创建一个 conda 环境,假设我们的环境名称为 my_env

conda create -n my_env

创建完成后,我们使用如下命令进入该环境

conda activate my_env

此时命令行前面多了一个 (my_env),这个是我们进入了该环境的标志。


使用 conda list 命令来查看该环境下都安装了哪些包。

因为我们并没有在创建环境的时候安装包,所以结果自然是什么都没有。

如果要退出该环境,只需执行

conda deactivate

注意: 我们只能退到基环境,在基环境下继续退出依然在基环境。


-p, --prefix:除了根据名称创建环境以外,我们还可以根据地址来创建 conda 环境。

在上面的例子中,我们创建的 my_env 环境的地址为:G:\anaconda3\envs\my_env。事实上,如果不指定地址,则所有的环境都会创建在 ...\anaconda3\envs\ 下。

若要根据地址来创建,只需执行

conda create -p G:\anaconda3\envs\my_env


–clone:--clone 主要用来克隆(复制)现有的环境。

我们可以根据现有环境的名称来进行克隆,假设现有环境的名称为 original_env,新的环境的名称为 new_env,则只需执行

conda create -n new_env --clone original_env

当然我们也可以根据现有环境的地址来进行克隆:

conda create -n new_env --clone G:\anaconda3\envs\original_env


-c, --channel:首先来介绍一下什么是 conda 频道。

conda 频道是存储包的位置,安装 包 时 conda 会搜索现有的频道集合,并选取其中一个频道来安装包。

conda 的默认频道是 https://repo.anaconda.com/pkgs/,但该频道需要付费,我们一般使用 conda-forge 这个频道来进行安装,它是免费的。

有关频道的设置这里从略,后续的章节会陆续提及。


packages:我们新创建的环境如果不安装必要的包是无法使用的,需要安装的包用空格隔开,即

conda create -n my_env python numpy flask

我们用该命令创建了一个叫 my_env 的环境,同时安装了三个包 python、numpy、flask。

安装完成后,可以使用 conda list 命令查看已经安装的包。

此外,我们的 python 安装的是最新版本,当然我们也可以指定版本进行安装:

conda create -n my_env python=3.9.7 numpy flask

conda install

conda install 可以用来在 conda 环境中安装相应的包,具体格式如下:

conda install [-n env_name | -p path] [-c channel_address] [packages]

已经介绍的选项这里就不再介绍了。

例如,我们要在 my_env 下安装 3.9.7 版本的 python。我们可以先进入该环境,然后安装:

conda activate my_env
conda install python=3.9.7
————————————————
conda install -n my_env python=3.9.7 # 根据名称
conda install -p G:\anaconda3\envs\my_env python=3.9.7 # 根据地址
————————————————

再例如,安装 cvxpy 时,我们可以从指定的频道(conda-forge)进行安装

conda install -n my_env -c conda-forge cvxpy

五、conda remove

conda remove 可以用来移除 conda 环境中的某些包,也可以移除整个环境,具体格式如下:

conda remove [-n env_name | -p path] [packages] [--all]

例如,如果我们需要移除 my_env 下的 numpy,只需执行

conda remove -n my_env numpy

当然我们也可以移除所有包(即整个conda环境)

conda remove -n my_env --all

需要注意的是,conda 没有提供重命名环境的命令,我们只能先克隆一份原来的环境,然后再删除原来的环境,具体操作如下(例如将环境 a 重命名成 b):

conda create -n b --clone a
conda remove -n a --all

conda uninstall 是 conda remove 的别名,我们也可以使用 conda uninstall 来移除包,方法是相同的。

六、conda list

conda list 用来列出 conda 环境中的包,具体格式如下:

conda list [-n env_name | -p path] [package]

conda list 只列出当前环境的所有包,若要列出其他环境的包,例如列出 my_env 下的所有包,只需执行:

conda list -n my_env

若要列出 my_env 中与 numpy 相关的包(准确地来说是含有 numpy 字样的包),只需执行:

conda list -n my_env numpy

基于此,我们可以使用 conda list 来查询当前环境是否安装了相应的包(每次只能查询一个),如果最后的结果没有列出,那就说明没有安装。
七、conda search
conda search 用来搜索指定的包,具体格式如下:

conda search [-c channel_address] [-f] [packages]

我们可以指定在 conda-forge 中搜索 numpy:

conda search -c conda-forge numpy

事实上,上述命令会搜索到所有包含 numpy 字样的包,如果我们只想搜索 numpy 这个包,需要加上 -f(--full-name 的缩写),即

conda search -c conda-forge -f numpy

八、conda update

conda update 用来将一系列的包升级到最新版本,具体格式如下:

conda update [-n env_name | -p path] [packages] [--all]

例如,如果我们想要升级 my_env 下的 numpy 和 scipy,只需执行

conda update -n my_env numpy scipy

如果我们要想更新 my_env 中的所有包,则需执行

conda update -n my_env --all

如果要更新 conda 本身,则需执行

conda update conda

如果要更新 anaconda ,则需执行

conda update anaconda

注: 升级 Anaconda 前需要先升级 conda。

九、conda config

conda config 用来配置 conda 的频道,相关信息会存储在 C:\Users\你的用户名\.condarc 文件中。

添加一个频道的格式为:

conda config --add channels [channel]

例如,若要添加 conda-forge 这个频道,只需执行

conda config --add channels conda-forge

由于国外频道速度一般不稳定,我们通常考虑使用国内的频道,例如清华镜像。

考虑到 Windows 用户无法直接创建名为 .condarc 的文件,我们可以先执行

conda config --set show_channel_urls yes

然后再直接修改该文件。

内容如下:

channels:
  - defaults
show_channel_urls: true
default_channels:
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2
custom_channels:
  conda-forge: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  msys2: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  bioconda: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  menpo: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  pytorch: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  pytorch-lts: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  simpleitk: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
1


修改完后,执行 conda clean -i 清除索引缓存,保证用的是镜像站提供的索引。

设置完后,我们可以执行

conda config --get channels

————————————————
转载自:https://blog.csdn.net/raelum/article/details/125109819

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

conda的一些常用命令 的相关文章

  • Django 的内联管理:一个“预填充”字段

    我正在开发我的第一个 Django 项目 我希望用户能够在管理中创建自定义表单 并向其中添加字段当他或她需要它们时 为此 我在我的项目中添加了一个可重用的应用程序 可在 github 上找到 https github com stephen
  • 处理 Python 行为测试框架中的异常

    我一直在考虑从鼻子转向行为测试 摩卡 柴等已经宠坏了我 到目前为止一切都很好 但除了以下之外 我似乎无法找出任何测试异常的方法 then It throws a KeyError exception def step impl contex
  • 需要在python中找到print或printf的源代码[关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我正在做一些我不能完全谈论的事情 我
  • 使用 Python 从文本中删除非英语单词

    我正在 python 上进行数据清理练习 我正在清理的文本包含我想删除的意大利语单词 我一直在网上搜索是否可以使用像 nltk 这样的工具包在 Python 上执行此操作 例如给出一些文本 Io andiamo to the beach w
  • 将 python2.7 与 Emacs 24.3 和 python-mode.el 一起使用

    我是 Emacs 新手 我正在尝试设置我的 python 环境 到目前为止 我已经了解到在 python 缓冲区中使用 python mode el C c C c将当前缓冲区的内容加载到交互式 python shell 中 显然使用了什么
  • Pandas Merge (pd.merge) 如何设置索引和连接

    我有两个 pandas 数据框 dfLeft 和 dfRight 以日期作为索引 dfLeft cusip factorL date 2012 01 03 XXXX 4 5 2012 01 03 YYYY 6 2 2012 01 04 XX
  • 如何将张量流模型部署到azure ml工作台

    我在用Azure ML Workbench执行二元分类 到目前为止 一切正常 我有很好的准确性 我想将模型部署为用于推理的 Web 服务 我真的不知道从哪里开始 azure 提供了这个doc https learn microsoft co
  • 使用 xlrd 打开 BytesIO (xlsx)

    我正在使用 Django 需要读取上传的 xlsx 文件的工作表和单元格 使用 xlrd 应该可以 但因为文件必须保留在内存中并且可能不会保存到我不知道如何继续的位置 本例中的起点是一个带有上传输入和提交按钮的网页 提交后 文件被捕获req
  • Python 2:SMTPServerDisconnected:连接意外关闭

    我在用 Python 发送电子邮件时遇到一个小问题 me my email address you recipient s email address me email protected cdn cgi l email protectio
  • 在Python中检索PostgreSQL数据库的新记录

    在数据库表中 第二列和第三列有数字 将会不断添加新行 每次 每当数据库表中添加新行时 python 都需要不断检查它们 当 sql 表中收到的新行数低于 105 时 python 应打印一条通知消息 警告 数量已降至 105 以下 另一方面
  • Docker 中的 Python 日志记录

    我正在 Ubuntu Web 服务器上的 Docker 容器中测试运行 python 脚本 我正在尝试查找由 Python Logger 模块生成的日志文件 下面是我的Python脚本 import time import logging
  • Numpy - 根据表示一维的坐标向量的条件替换数组中的值

    我有一个data多维数组 最后一个是距离 另一方面 我有距离向量r 例如 Data np ones 20 30 100 r np linspace 10 50 100 最后 我还有一个临界距离值列表 称为r0 使得 r0 shape Dat
  • Jupyter Notebook 找不到 Python 模块

    不知道发生了什么 但每当我使用 ipython 氢 原子 或 jupyter 笔记本时都找不到任何已安装的模块 我知道我安装了 pandas 但笔记本说找不到 我应该补充一点 当我正常运行脚本时 python script py 它确实导入
  • Python3 在 DirectX 游戏中移动鼠标

    我正在尝试构建一个在 DirectX 游戏中执行一些操作的脚本 除了移动鼠标之外 我一切都正常 是否有任何可用的模块可以移动鼠标 适用于 Windows python 3 Thanks I used pynput https pypi or
  • 如何使用原始 SQL 查询实现搜索功能

    我正在创建一个由 CS50 的网络系列指导的应用程序 这要求我仅使用原始 SQL 查询而不是 ORM 我正在尝试创建一个搜索功能 用户可以在其中查找存储在数据库中的书籍列表 我希望他们能够查询 书籍 表中的 ISBN 标题 作者列 目前 它
  • Pandas 将多行列数据帧转换为单行多列数据帧

    我的数据框如下 code df Car measurements Before After amb temp 30 268212 26 627491 engine temp 41 812730 39 254255 engine eff 15
  • 根据列 value_counts 过滤数据框(pandas)

    我是第一次尝试熊猫 我有一个包含两列的数据框 user id and string 每个 user id 可能有多个字符串 因此会多次出现在数据帧中 我想从中导出另一个数据框 一个只有那些user ids列出至少有 2 个或更多string
  • Python:XML 内所有标签名称中的字符串替换(将连字符替换为下划线)

    我有一个格式不太好的 XML 标签名称内有连字符 我想用下划线替换它 以便能够与 lxml objectify 一起使用 我想替换所有标签名称 包括嵌套的子标签 示例 XML
  • 在本地网络上运行 Bokeh 服务器

    我有一个简单的 Bokeh 应用程序 名为app py如下 contents of app py from bokeh client import push session from bokeh embed import server do
  • 使用 z = f(x, y) 形式的 B 样条方法来拟合 z = f(x)

    作为一个潜在的解决方案这个问题 https stackoverflow com questions 76476327 how to avoid creating many binary switching variables in gekk

随机推荐

  • Pytorch与Onnx模型的保存、转换与操作

    Open Neural Network Exchange ONNX 开放神经网络交换 格式 是一个用于表示深度学习模型的标准 可使模型在不同框架之间进行转移 一 pytorch模型保存 加载 有两种方式可用于保存 加载pytorch模型 1
  • mysql查询表的所有内容

    show create table 表名
  • echarts设置x轴字体不同颜色

    业务需求 根据x轴是用户和有用户的文件夹来展示两种颜色 在获取数据的方法中 initData totalAnaysis then res gt let xData yData xFontcolor res data user forEach
  • 男人彻底懂得一个女人之后就不会爱她了吗?

    爱情教母张爱玲说过 男人彻底懂得一个女人之后 是不会爱她的 其实张爱玲的表达不确切 谁都不可能彻底懂得谁 自己都不可能彻底懂得自己 否则 张爱玲不会一遍一遍地写自己的童年 对其进行剖析 早年的有散文 私语 后来有英文的 雷峰塔 和中文的 小
  • java 提取文档注释 命令,java文档注释及javadoc命令

    注释的三种类型 1 单行注释 双斜线 2 多行注释 一次性将程序的多行注释掉 3 文档注释 如果编写Java源代码是添加了合适的文档注释 然年后通过JDK提供的Javadoc工具可以直接将源代码里面的文档注释提取成一份系统的API文档 文档
  • 破解AES秘钥长度限制

    破解AES秘钥长度限制 高级加密标准 AES 在密码学中又称Rijndael加密法 是美国联邦政府采用的一种区块加密标准 这个标准用来替代原先的DES 密码说明 因为Rijndael加密法可以支持更大范围的区块和密钥长度 AES的区块长度固
  • 在liunx双机下自己动手实现浮动IP技术

    http www 360doc com content 11 0823 18 5907545 142730623 shtml 有两台Linux服务器 其中一台主机 IP 139 24 214 22 对外提供了一定的网络服务 另一台从机 IP
  • 性能测试连载 (7)-jmeter 压力测试中的难点解析

    概述 新人在用jmeter做压力测试的时候 会被一些性能术语搞懵 直接导致的后果就是对测试出来的结果数据根本不能理解 更谈不上分析 这篇文章着重给大家实例解释一下jmeter压力测试的一些专有名词 问题1 什么是压力测试 问到如何做压力测试
  • 不同行业数字化工厂建设的几种模式

    国内制造业现阶段面临着巨大的转型压力 劳动力成本迅速攀升 产能过剩 竞争激烈 客户个性化需求日益增长等因素 迫使制造企业从低成本竞争策略转向建立差异化竞争优势 在工厂层面 企业面临着招工难 以及缺乏专业技师的巨大压力 必须实现减员增效 迫切
  • Doris 报错及解决方法

    1 1105 errCode 3 detailMessage tablet 348546 has few replicas 0 alive backends 用csv文件导入数据时报错 用show backends查看有BE节点宕机了 2
  • 基于STM32单片机的农作物大棚灌溉系统设计

    一 硬件方案 本设计以STM32单片机作为主控芯片 实现对农作物大棚环境的温度 湿度 光强度和土壤湿度进行监测 并根据具体情况进行相应的补水和补光 主要由STM32F103C8T6单片机最小系统 wifi模块 温湿度模块 1602液晶显示模
  • windows下编译libLAS库及配置

    windows下编译libLAS库及配置 前言 LibLAS编译 1 在进行编译之前我们首先需要编译Boost GDAL TIFF LASZIP和GeoTIFF的编译 大家可以参考下面的教程 Boost https blog csdn ne
  • jsp页面有中文显示乱码

    Tomcat目录的webapp目录下新建jspProject目录 创建以上文件夹 其中web inf文件夹可从ROOT目录下复制 新建index jsp 代码如下 hello Jsp 访问页面 中文显示乱码 更改jsp编码格式 在头一行中加
  • 【MySQL】mysql在Windows下使用mysqldump命令备份数据库

    在cmd窗口中使用mysqldump命令首先需要配置环境变量 1 在计算机中找到MySQL的安装位置 找到MySQL Workbench 比如我的是C Program Files MySQL MySQL Server 5 7 bin 2 在
  • 【目标检测】5、Faster R-CNN

    文章目录 摘要 引言 2 相关工作 3 Faster R CNN 3 1 区域提议网络 3 1 1 anchor 3 1 2 损失函数 3 1 3 训练RPNs 3 2 RPN和Fast R CNN的特征共享 3 3 实现细节 4 实验 4
  • (python)用户输入一段英文,然后输出这段英文中所有长度为3的英文单词

    正则表达式 集合 import re words input Input the words l re split words 使用空格分隔词语 得到各个单词 print l i 0 这里我设置的是计数器 for i in l if len
  • Linux下逻辑地址、线性地址、物理地址详细总结

    一 逻辑地址转线性地址 机器语言指令中出现的内存地址 都是逻辑地址 需要转换成线性地址 再经过MMU CPU中的内存管理单元 转换成物理地址才能够被访问到 我们写个最简单的hello world程序 用gcc编译 再反编译后会看到以下指令
  • awk的sort功能(zz)

    awk的sort功能 zz 2009 04 27 19 07 排序是经常用到的操作 然而原始版本的awk并没有内置的sort函数 想要排序数组的话只能自己实现一个sort函数 在gawk的3 1以后的版本 扩展提供了对数组的sort功能 a
  • Android开源框架之Android-PullToRefresh

    简介 PullToRefresh是一套实现非常好的下拉刷新库 它支持 ListView ExpandableListView GridView WebView ScrollView HorizontalScrollView ViewPage
  • conda的一些常用命令

    参考博客 我们可以在命令行中或者anaconda prompt中执行命令进行操作 常用命令留存 conda create n Python27 python 3 7 conda create n new env clone original