我正在尝试使用conda
来处理一些用例。主要的问题是,conda init
在同一个bash shell脚本中的流程中无法正常工作,这让我很头疼。我经常看到以下错误:
CommandNotFoundError: Your shell has not been properly configured to use 'conda activate'.
即使已经执行了conda初始化脚本和conda init
的内容,也会出现这种情况。结果是不一致的:有时候初始化逻辑可以正常工作,有时候则不行。我还没有确定它需要什么魔法才能正常工作。
conda_init() {
# __conda_setup="$('$CONDA_DIR/bin/conda' 'shell.bash' 'hook' 2> /dev/null)";
source $CONDA_DIR/etc/profile.d/conda.sh
export PATH="$CONDA_DIR/condabin:$CONDA_DIR/bin:$PATH";
export CONDARC=$CONDA_DIR ;
conda init bash
}
conda_init
conda activate py38
这给了我们
/Users/steve/opt/miniconda3/bin/conda
/Users/steve/opt/miniconda3/bin::/Users/steve/opt/miniconda3/condabin:<other stuff..>
CommandNotFoundError: Your shell has not been properly configured to use 'conda activate'.
To initialize your shell, run
$ conda init <SHELL_NAME>
Currently supported shells are:
- bash
- fish
- tcsh
- xonsh
- zsh
- powershell
See 'conda init --help' for more information and options.
IMPORTANT: You may need to close and restart your shell after running 'conda init'.
如何使 conda_init()
能够可靠地运行 conda init
在同一 shell 中?
conda activate
在哪里被调用了?另外,一个懒惰的选项是使用初始化文件:conda init bash && source ~/.bashrc
。 - mervconda activate
。该脚本旨在用于可能在任何地方运行的 Python 脚本中。重点是与更新用户主目录分离。 - WestCoastProjectsmicromamba
,它包含激活功能而不会触及用户的资源文件。目前,OP方法对我来说似乎有点不正规,可能是XY问题。请考虑在问题描述中描述最终想要实现的生产阶段愿景。 - mervmicromamba
,然后运行了micromamba install python=3.8 py38_mamba
,但是出现了error libmamba No target prefix specified
的错误信息。我在谷歌上找不到任何相关结果。我想我可以再提一个问题来解决这个问题。 - WestCoastProjects