我使用 Anaconda3-2019.10-Linux-x86_64.sh 安装了 Conda。到今天为止,它运行良好。我能够运行创建新的虚拟环境并激活它,然后按预期停用它。基本上,
conda --version
很好。conda create -n newenv
很好。conda activate newenv
也很好。
现在,在创建额外的新环境后,conda 拒绝激活它,即命令conda activate newenv
返回powerline-shell:command not found
并且我需要终止终端。
有什么变化?我更新了我的 conda 版本。我现在在 ubuntu 18.04.4 LTS 下运行 conda 4.8.3。我检查了 conda activate 和 conda deactivate 仅适用于 conda 4.6 及更高版本。因此应该适用于 4.8.3。
运行时,新的环境就会出现在列表中conda env list
。
echo $PATH
其中包括:
/home/<user>/anaconda3/bin
/home/<user>/anaconda3/condabin
我可以使用 安装程序包conda install -n newenv numpy
。运行良好。我可以在新环境中列出软件包。
为什么conda activate
停止工作而其他 conda 命令仍然有效?我该如何修复它?
经过多次尝试,我按照以下方式修复了它:
从 .bashrc 文件中删除电力线配置
函数 _update_ps1() { PS1=$(powerline-shell $?) }
如果 [[ $TERM != linux && ! $PROMPT_COMMAND =~ _update_ps1 ]]; 则 PROMPT_COMMAND="_update_ps1; $PROMPT_COMMAND" fi
pip install powerline-shell
- 在 .bashrc 中恢复 powerline-shell 的配置行
我不确定我是否完全了解问题的根源。在我看来,conda 的更新破坏了对 powerline-shell 包的依赖。从 .bashrc 配置中删除这些行让我明白问题只与 powershell 有关,而不是更深层次的 conda 或命令行问题。因此我的想法是重新安装 powershell 包。
答案1
注意-遇到同样的问题并已修复。
问题出在将 power-line shell 安装在 conda 基础环境中而不是本地目录中。因此,每次更改 conda 环境时,powerline-shell 可执行文件都不再可用。
首先确保which powerline-shell
返回/home/$USER/.local/bin/powerline-shell
,其中 $USER 是您的用户目录。如果没有,请删除 powerline-shell。如果有配置文件,请确保复制它。
现在,使用 安装 powerline-shell pip3 install --user power-line-shell
。确保您已先停用 conda 环境(base
环境也是如此)。
最后,添加export PATH="$PATH:/home/$USER/.local/bin/"
你的 bashrc。