aba*_*ter 1 anaconda conda mamba
安装 micromamba 后(与 conda 的任何风格相同),当我的 .bashrc 加载时,我的路径中有一个条目,如下所示:
/home/users/balter/micromamba/condabin
人们很自然地认为这是可以找到 conda 可执行文件的目录,但事实并非如此:
balter@exahead1:~$ which micromamba
/usr/bin/which: no micromamba in (/home/groups/chse/Code/quality_measures:/home/groups/chse/Code/exacloud_utilities:/home/users/balter/micromamba/condabin:/home/users/balter/perl5/bin:/home/exacloud/software/spack/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/opt/ibutils/bin:/opt/puppetlabs/bin:/opt/dell/srvadmin/bin:/home/users/balter/usr/bin:/home/users/balter/bin)
balter@exahead1:~$ ls micromamba/
bin compiler_compat COPYING envs fonts lib man pyodbc.pyi sbin ssl x86_64-conda_cos6-linux-gnu
cmake conda-meta docs etc include libexec pkgs README share var x86_64-conda-linux-gnu
balter@exahead1:~$ find . -type d -name "condabin"
balter@exahead1:~$ conda activate
(base) balter@exahead1:~$
Run Code Online (Sandbox Code Playgroud)
所以,
micromamba
,which
不知道的位置。这是如何运作的,其目的是什么~/micromamba/condabin
?
我可以运行一个命令,例如
micromamba
,which
不知道的位置。
~/.bashrc
这是因为你可能在你的某个地方(或者如果在 Windows 或 macOS 上)有曼巴初始化块~/.bash_profile
,它看起来像这样:
# >>> mamba initialize >>>
# !! Contents within this block are managed by 'mamba init' !!
export MAMBA_EXE="/opt/homebrew/bin/micromamba";
export MAMBA_ROOT_PREFIX="/Users/pavel/micromamba";
__mamba_setup="$("$MAMBA_EXE" shell hook --shell bash --prefix "$MAMBA_ROOT_PREFIX" 2> /dev/null)"
if [ $? -eq 0 ]; then
eval "$__mamba_setup"
else
if [ -f "/Users/pavel/micromamba/etc/profile.d/micromamba.sh" ]; then
. "/Users/pavel/micromamba/etc/profile.d/micromamba.sh"
else
export PATH="/Users/pavel/micromamba/bin:$PATH" # extra space after export prevents interference from conda init
fi
fi
unset __mamba_setup
# <<< mamba initialize <<<
Run Code Online (Sandbox Code Playgroud)
在这里,在定义"$MAMBA_EXE" shell hook --shell bash --prefix "$MAMBA_ROOT_PREFIX"
函数的地方被调用。micromamba
micromamba
因此,即使micromamba
不在其中,您也可以调用activate $PATH
,因为它是一个函数。如果你打电话type micromamba
你应该得到函数定义
micromamba() {
\local cmd="${1-__missing__}"
case "$cmd" in
activate|deactivate)
__mamba_activate "$@"
;;
install|update|upgrade|remove|uninstall)
__mamba_exe "$@" || \return
__mamba_reactivate
;;
self-update)
__mamba_exe "$@" || \return
# remove leftover backup file on Windows
if [ -f "$MAMBA_EXE.bkup" ]; then
rm -f $MAMBA_EXE.bkup
fi
;;
*)
__mamba_exe "$@"
;;
esac
}
Run Code Online (Sandbox Code Playgroud)
~/micromamba/condabin 的目的是什么?
该condabin
目录用于powershell
和的 shell 初始化脚本cmd.exe
。在这里您可以看到哪些 shell 初始化脚本应该位于何处。bash
初始化zsh
脚本位于~/micromamba/etc/profile.d/
和cmd.exe
以及powershell
中~/micromamba/condabin/
。
归档时间: |
|
查看次数: |
1109 次 |
最近记录: |