我最近从 Windows 转换到了 Ubuntu。
在 Windows 中,当我进行任何类型的编码时,我都使用与命令提示符分开的 anaconda 提示符来运行任何与 python 相关的命令。
但是当切换到 Ubuntu 时,只有一个终端,我已将 Anaconda 下载到该终端上。它现在显示与 Windows 中的 anaconda 提示符相同的格式,即以 开头(base)
。
我想知道这与现在默认加载的简单 Windows 命令提示符之间有什么区别(base)
,但我不确定我是否仍然可以在此终端中运行正常的非 anaconda 相关命令,或者我必须以某种方式摆脱这个(base)
提示。
答案1
在 Ubuntu (Linux) 下,当您使用 Anaconda 时,您只是更改了程序的搜索路径。例如,输入: env | grep ^PATH
并记下它的内容。
现在,如果您已经创建了一个名为的环境foo
,然后通过键入来激活它conda activate foo
,那么您现在将看到(foo)
提示。
完成此操作后,env | grep ^PATH
再次输入。您将看到“foo”环境的位置已放在您的 中较早的位置PATH
。程序一次搜索一个目录,从 的前面开始PATH
。
如果您处于“foo”环境中,您的终端将先搜索“foo”中的程序,然后搜索基础环境(即,所有其他环境的父环境),然后搜索系统。
默认情况下,当您登录时,“基础”环境会激活。这就是您所看到的。如果您想禁用它,请创建一个名为的文件~/.condarc
(如果已有文件,请编辑它)并向其中添加以下内容:
auto_activate_base: false
注销并重新登录后,“base”环境将不再自动激活。如果您在系统、“base”环境和“foo”环境中安装了一个名为“bar”的程序,则它们可能是 3 个不同的版本。使用命令which
查看您正在运行的程序所在的位置总是很有用的。即,键入which bar
。
是的,您可以运行“常规非 Anaconda”命令。它将根据您的PATH
设置搜索程序。如果您已激活“foo”环境并且想要在系统中明确运行程序,那么您也可以提供确切的位置。即/bin/bar
。Anaconda 不会对您“隐藏”系统——它只是在寻找程序时更改优先级。
(我无法回答您关于与 Windows 进行比较的问题,因为我从未将它与 Anaconda 一起使用过。)
希望这可以帮助!