[已解决] VS Code / Cursor / Trae 的 PowerShell 终端 conda activate 进不去环境的常见问题

背景

bash 复制代码
PS C:\Users\Lenovo\WPSDrive\669715199_3\WPS云盘\课程\研一\ROAS5700 Robot Motion Planning and Control\Final\LaTex报告\final-v1> conda activate mp

PS C:\Users\Lenovo\WPSDrive\669715199_3\WPS云盘\课程\研一\ROAS5700 Robot Motion Planning and Control\Final\LaTex报告\final-v1> conda env list
# conda environments:
#
base                     E:\anaconda3
d2l-1                    E:\anaconda3\envs\d2l-1
d2l-cuda113           *  E:\anaconda3\envs\d2l-cuda113
fintech-hw2-cpu          E:\anaconda3\envs\fintech-hw2-cpu
mp                       E:\anaconda3\envs\mp
scrape-rag               E:\anaconda3\envs\scrape-rag
vis_mlab                 E:\anaconda3\envs\vis_mlab
  • 也就是说执行了conda activate mp,但是没进得去环境,还在 d2l 环境里

这个问题很常见,尤其是在 PowerShell 中使用 Conda 时

这通常意味着 Conda 的 shell 初始化没有在当前的 PowerShell 会话中正确生效,或者 PowerShell 的配置阻止了 Conda 修改环境

解决方案

以下是一些排查步骤和解决方法:

  1. Conda 初始化 PowerShell:

    复制代码
    conda init powershell

    运行这个命令后,你需要关闭并重新打开 VS Code 的终端(或者整个 VS Code 编辑器) ,以确保 PowerShell 的配置文件 (profile.ps1) 被正确加载

  2. 检查 PowerShell 执行策略: PowerShell 有一个执行策略,可能会阻止 profile.ps1 脚本(Conda 初始化时会修改这个脚本)的运行

    • 打开一个新的 PowerShell 终端

    • 检查当前的执行策略:

      复制代码
      Get-ExecutionPolicy
    • 如果返回的是 Restricted,那么你需要更改它。一个相对安全的设置是 RemoteSigned

      复制代码
      Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
    • 之后再次尝试关闭并重新打开 VS Code 的终端,然后激活环境

  3. PowerShell 提示符变化: 成功激活 Conda 环境后,你的 PowerShell 提示符通常会发生变化,在前面显示环境名称,例如:

复制代码
  (mp) PS C:\Users\Lenovo\WPSDrive\...\final-v1>

看看效果

bash 复制代码
(base) PS C:\Users\Lenovo\WPSDrive\669715199_3\WPS云盘\课程\研一\ROAS5700 Robot Motion Planning and Control\Final\LaTex报告\final-v1> conda activate mp
(mp) PS C:\Users\Lenovo\WPSDrive\669715199_3\WPS云盘\课程\研一\ROAS5700 Robot Motion Planning and Control\Final\LaTex报告\final-v1>

成功解决!

相关推荐
mOok ONSC1 天前
mysql9.0windows安装
windows·adb
charlie1145141911 天前
嵌入式Linux驱动开发——新字符设备驱动 API 概览
linux·运维·驱动开发
♛识尔如昼♛1 天前
C 进阶(2) - 文件I/O
linux·文件i/o
顺风尿一寸1 天前
深入 Linux 内核 6.8.12:从 Futex 到 MCS 队列自旋锁的完整同步机制剖析
linux
橙子也要努力变强1 天前
信号的保存、阻塞与递达
linux·服务器·c++
T0uken1 天前
基于 vcpkg 与 LLVM-MinGW 的 Qt6 静态链接开发方案
c++·windows·qt
进阶的猪1 天前
使用printk对SPI子系统全过程的追踪
linux·服务器
2301_803554521 天前
Linux里面的文件描述符和windows里面的句柄
linux·运维·服务器
星马梦缘1 天前
如何切换window-ubuntu双系统【方案一】
linux·ubuntu·双系统
无心水1 天前
【Hermes:Skill系统深度】21、Skill 调试与冲突解决:为什么没触发?怎么修复? —— Honcho 智能体排障完全手册
人工智能·windows·openclaw·养龙虾·hermes·养马·honcho