PowerShell 实现 conda 懒加载

问题

执行命令conda init powershell会在 profile.ps1中添加conda初始化的命令。

即使用户不需要用到conda,也会初始化conda环境,拖慢PowerShell的启动速度。

解决方案

本文展示了如何实现conda的懒加载,默认不加载conda环境,只有在用户执行conda命令时才加载。

(1) Path环境变量添加conda路径

  • 添加conda3的本地路径:D:\code\miniconda3
  • 添加conda3的脚本路径:D:\code\miniconda3\Scripts

(2) 注销conda初始化命令

  • 进入文件夹:C:\Users<user_name>\Documents\WindowsPowerShell

  • 编辑profile.ps1文件,注释或删除conda初始化代码

    #region conda initialize

    !! Contents within this block are managed by 'conda init' !!

    If (Test-Path "D:\code\miniconda3\Scripts\conda.exe") {

    (& "D:\code\miniconda3\Scripts\conda.exe" "shell.powershell" "hook") | Out-String | ?{$_} | Invoke-Expression

    }

    #endregion

(3) 封装conda命令,实现懒加载

  • 进入文件夹:C:\Users<user_name>\Documents\WindowsPowerShell

  • 编辑Microsoft.PowerShell_profile.ps1文件,添加代码。

    function Load-Conda {
    If (Test-Path "D:\code\miniconda3\Scripts\conda.exe") {
    (& "D:\code\miniconda3\Scripts\conda.exe" "shell.powershell" "hook") | Out-String | ?{$_} | Invoke-Expression
    }

    复制代码
      conda @args

    }

    Set-Alias conda Load-Conda

相关推荐
小oo呆4 小时前
【学习心得】Jupyter 如何在conda的base环境中其他虚拟环境内核
python·jupyter·conda
请你喝好果汁64113 小时前
学习笔记:Conda 环境共享
笔记·学习·conda
珊珊而川13 小时前
conda init执行了还是不好用
conda
Eric.Lee20211 天前
Ubuntu shell指定conda的python环境启动脚本
python·ubuntu·conda·shell
Echo丶洛尘1 天前
Pycharm中No Conda enviroment selected
pycharm·conda
tyn1882 天前
记录一次conda虚拟环境pip安装报错[WinError 32] 另一个程序正在使用此文件,进程无法访问
windows·conda·pip·虚拟环境·虚环境
陈苏同学2 天前
[已解决] VS Code / Cursor / Trae 的 PowerShell 终端 conda activate 进不去环境的常见问题
linux·windows·conda
Eric.Lee20212 天前
conda 输出指定python环境的库 输出为 yaml文件
linux·python·conda
Hello world.Joey3 天前
数据挖掘入门-二手车交易价格预测
人工智能·python·数据挖掘·数据分析·conda·pandas