如何在Windows上创建一个conda环境快捷方式

11
安装了Anaconda后,我在Windows开始菜单上得到了一个名为anaconda base的快捷方式。要打开我创建的虚拟环境(例如myenv),我必须单击anaconda base并在打开的cmd窗口中键入activate myenv
如何创建一个快捷方式以单击方式进入myenv,而不需要像上面那样打开和输入?
我尝试创建基本快捷方式的副本并更改其命令属性,即%windir%\System32\cmd.exe "/K" C:\Programs\anaconda3\Scripts\activate.bat C:\Programs\anaconda3\envs\myenv。它确实打开了myenv命令行,但似乎丢失了一些内置命令,如conda
我想我需要一点Windows批处理技能方面的帮助。

我认为您可能引用错误了,%WinDir%\System32\cmd.exe /K "C:\Programs\anaconda3\Scripts\activate.bat C:\Programs\anaconda3\envs\myenv"。在提示符处键入cmd /?以获取有关该特定命令的使用帮助。 - Compo
@Compo,使用您的版本后,我得到了相同的结果,即我的环境已经打开,但是一些命令(例如conda)不在环境中。;-( - John Wang
我只是提供了一个修复你错误引用的解决方案,而不是对你问题的回答。回答应该在答案区域提供,而不是评论区域。 这样做只是因为你在问题区域没有提供足够的信息让我有信心提供一个答案。 - Compo
答案应该在批处理文件本身中。 - Gerhard
由于我也使用 git-bash,我发现我可以将 source /c/.../activate /c/.../myenv 放入我的 .bashrc 文件中。之后,当我启动 git-bash 时,它会进入 myenv 并正常工作!我现在会使用 git-bash - John Wang
有趣的是,你可以使用 %windir%\system32\cmd.exe "/K" C:\appl\Anaconda3\Scripts\activate.bat base 创建一个到基本环境的快捷方式,这将在路径中包含 conda.exe。如果你从那里运行 conda activate myenv,conda.exe 将保留在 PATH 中。但是,如果你尝试直接激活 myenv,它将无法访问 conda.exe。 - RubenLaguna
7个回答

8
把上面的注释放在一个简单的批处理脚本中运行,可以完美地工作:
@echo off    
set PATH=%PATH%;C:\ProgramData\Anaconda3\Scripts
%windir%\system32\cmd.exe "/K" C:\ProgramData\Anaconda3\Scripts\activate.bat <env-name>

3
太好了!在最后一行之前添加cd /d e:\my-working-dir,这样就完美了。谢谢你。 - John Wang
1
这不是一个“捷径”。 - BirdLaw
创建一个到cmd的快捷方式,将目标设置为%windir%\system32\cmd.exe "/K" %USERPROFILE%\Miniconda3\Scripts\activate.bat base(我使用Miniconda3)。双击打开一个已经激活环境的cmd提示符。 - Russ

3
下面的方法对我有效。唯一改变的是传递给activate.bat的参数仅仅是环境名称(不是完整路径),就像你通常在使用activate命令时输入的那样。顺便说一下,你的引号用得很好。例如:
%windir%\system32\cmd.exe "/K" C:\ProgramData\Anaconda3\Scripts\activate.bat myenv

这将激活环境,但 conda.exe 不会出现(除非您已经将 C:\ProgramData\Anaconda3\Scripts 添加到全局 PATH 中,这不是安装 Anaconda 的推荐选项)。 - RubenLaguna
conda.batactivate.bat 调用时已经处理了 PATH。 - sdittmar

2
对于miniconda来说,它是这样的:
@echo off    
set PATH=%PATH%;C:\ProgramData\miniconda3\Scripts
%windir%\system32\cmd.exe "/K" C:\ProgramData\miniconda3\Scripts\activate.bat video

本来想在Jonathan的帖子下留言的,但我是新人,不好意思。

1

在创建新环境之前,您可以指定:

conda config --set shortcuts true

之后,您可以看到新环境的快捷方式。


1
我的电脑自动创建了一个Spyder的快捷方式,格式如下:
C:\Anaconda3\pythonw.exe C:\Anaconda3\cwp.py C:\Anaconda3\envs\py36 C:\Anaconda3\envs\py36\pythonw.exe C:\Anaconda3\envs\py36\Scripts\spyder-script.py

这是非命令行应用程序的绝佳选择。我刚刚使用它作为C:\Miniconda3\pythonw.exe C:\Miniconda3\cwp.py C:\Miniconda3\envs\env0 app.exe。将 env0 和 app.exe 替换为您各自的值,并且没有 cmd.exe 将被显示。 - neurosock
1
这需要使用较短的路径,因为完整字符串必须在259个字符内。 - Mike T

0

我使用 ConEmu 终端,与传统的 cmd.exe shell 配合使用。这是我到 MiniConda3 的快捷方式: C:\Users\nmz787\Downloads\conemu_22_08_07\ConEmu64.exe -run {Shells::cmd} & C:\Users\nmz787\Miniconda3\condabin\conda.bat activate


-2

你可以通过在要激活的环境中安装conda软件包来解决这个问题。

从Anaconda提示符中(其中已经可以访问到conda):

conda install -n myenv conda

然后,您可以创建一个Windows快捷方式,目标为%windir%\system32\cmd.exe "/K" C:\appl\Anaconda3\Scripts\activate.bat myenv

这种方法不太理想,因为它会污染您的环境并且我不建议使用。

另一种选择是将C:\Anaconda3\Scripts目录添加到PATH环境变量中。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接