windows conda环境在cmd/powershell/git-bash下的配置

目录

在windows各类常用的命令行工具下如何快速启动Anaconda环境下的python呢? 本文介绍一下我的配置。

cmd

任选一在PATH环境变量内的路径,或将某路径加入到PATH,在该路径下然后新建 anaconda.bat 文件,内容为 D:\Anaconda\Anaconda3\Scripts\activate.bat D:\Anaconda\Anaconda3

这样打开cmd后,输入anaconda就会激活base环境。

powershell

  • 方法一

    由于conda有powershell版本的激活脚本,所以与上述cmd做法类似,只是建的是ps1脚本而已,但最好取个与上面cmd不一样的名称,如conda-ps.ps1。这里推荐方法二。

  • 方法二

    直接在powershell profile文件中新建一函数,取名anaconda,profile文件路径根据需要选择,我用的是$profile变量存储的路径,可用echo $profile查看

    function anaconda {
    	& 'D:\Anaconda\Anaconda3\shell\condabin\conda-hook.ps1'
    	conda activate D:\Anaconda\Anaconda3
    }
    

    anaconda这个名称和上面anaconda.bat同名也没关系,powershell会优先取profile中的变量

设置好之后,打开powershell,输入anaconda就会激活base环境

git-bash

由于git-bash在windows下体验不错,所以会有在git-bash下运行conda下python的需求,但配置相对复杂,需要在bashrc文件最后添加代码:

# add conda path
. /d/Anaconda/Anaconda3/etc/profile.d/conda.sh

# alias
alias python='winpty python'
alias ipython='winpty ipython'
alias sqlite3='winpty sqlite3'
alias anaconda='conda activate'
  • bashrc文件路径: ~/.bashrc (User级别) 或 <git安装目录>\etc\bash.bashrc (Gloabl级别)
  • 其中conda path指Anaconda安装目录下的etc\profile.d\conda.sh
  • 然后是alias,如果不加上述alias大部分功能也可正常运行,但涉及到一些用户交互的命令时(比如等待用户输入)git可能会卡住,可加上winpty防止此类情况发生

打开git-bash之后,输入anaconda就会激活bash环境。