windows环境下anaconda/miniconda 在gitbash的zsh中使用conda activate

这个问题折磨了一天 防止以后再出现此问题忘记解决方法 记录一下

问题描述

核心原因就是\r,\n,\r\n的区别
可能会导致:

(eval):11: parse error near ^M 

解决方案

解决方案如下:
在~/.zshrc中添加下面这个(记得修改conda.exe的路径)

# >>> conda initialize >>>
# !! Contents within this block are managed by 'conda init' !!
eval "$('/c/path/to/miniconda3/Scripts/conda.exe' 'shell.zsh' 'hook' | sed -e 's/"$CONDA_EXE" $_CE_M $_CE_CONDA "$@"/"$CONDA_EXE" $_CE_M $_CE_CONDA "$@" | tr -d \x27\\r\x27/g')"
# <<< conda initialize <<<

如果出现了下面这个问题
windows环境下anaconda/miniconda 在gitbash的zsh中使用conda activate_第1张图片
需要将

print(activator.execute(),end="")

修改为

print(activator.execute().encode('gbk','ignore').decode('gbk'), end ='')

通过上述两个步骤后可以正常在zsh中使用conda activate
在这里插入图片描述

bug

刚刚发现在pycharm中使用zsh的terminal不会自动激活虚拟环境 而是启动base 关掉自动启动虚拟环境即可

conda config --set auto_activate_base false   

参考链接

  1. https://github.com/conda/conda/issues/9922#issuecomment-1361695031
  2. https://blog.csdn.net/weixin_45335778/article/details/134717898

你可能感兴趣的:(windows,conda)