conda env list是更明确、更现代的写法,官方文档和conda --help均将其置首;conda info --envs虽功能相同但参数易错,且已逐渐被前者取代。

直接运行 conda env list 或 conda info --envs 就能列出所有环境,带 * 的是当前激活的环境。
为什么两个命令都能用,但推荐 conda env list
这两个命令功能完全一致,输出格式也一样,但 conda env list 是更明确、更现代的写法。早期文档里常用 conda info --envs,现在官方文档和 conda --help 都把 env list 放在首位。如果你看到别人用 conda envlist(没空格),那是旧版拼写,新版本会报错或忽略,必须加空格。
-
conda env list:稳定、可读性强,推荐日常使用 -
conda info --envs:兼容老脚本,但参数长,容易打错--envs(少个s或多加=都会失败) -
conda envlist(无空格):已弃用,conda 25.x+ 版本会提示command not found
conda env list 输出里路径不一致,是怎么回事
列表第二列显示的是每个环境的绝对路径,不同环境可能出现在不同目录,这是正常现象,原因包括:
- 没指定路径时,conda 默认优先存到用户级目录:
C:\Users\用户名\.conda\envs(Windows)或~/.conda/envs(macOS/Linux) - 如果用
--prefix创建过环境(比如conda create --prefix D:\myproj\env python=3.11),那路径就是你指定的位置 - 系统级安装(如装在
D:\anaconda3)可能让base环境指向根目录,而其他环境仍落在.conda\envs下 - 多个 conda 安装(比如同时有 Anaconda 和 Miniconda)会导致
envs directories列出多个路径,conda env list会合并展示全部
看不到刚创建的环境?检查这几点
执行 conda env list 后没看到你认为“应该存在”的环境,常见原因有:
- 环境创建中途被中断(比如网络断了、Ctrl+C),导致只建了文件夹但没写入
conda-meta\history,此时该目录不会出现在列表中 - 用了
--prefix但路径含中文、空格或特殊符号,某些 shell 解析失败,建议用英文路径 - 在 WSL 或 Docker 里操作,却在 Windows 原生终端运行命令——环境不跨系统
- 误删了
.condarc或修改了envs_dirs配置,导致 conda 不再扫描默认目录,可用conda config --show envs_dirs查看实际搜索路径
真正容易被忽略的是:conda 不会自动扫描任意文件夹下的 Python 环境(比如手动复制的 env 文件夹),它只认自己管理过的、有完整 conda-meta 元数据的目录。哪怕路径下明明有个 python.exe,只要没被 conda 记录,就不会出现在 env list 里。











