在 Windows 中激活 conda 环境时如何更改目录

How to change directory when activating conda environment in Windows

基于 this Q&A(由 Nehal J Wani 回答),似乎可以创建然后修改某个配置文件,以便在激活 conda 环境时自动更改目录。有人知道如何在 Windows 中执行此操作 and/or 可以将下面的代码转换为 Windows 友好的步骤吗?

(root) [watchmen@manhattan ~]# mkdir /tmp/myproject
(root) [watchmen@manhattan ~]# conda create -yn myproject python=3.6
(root) [watchmen@manhattan ~]# source activate myproject
(myproject) [watchmen@manhattan ~]# mkdir -p $CONDA_PREFIX/etc/conda/activate.d
(myproject) [watchmen@manhattan ~]# cat <<EOF > $CONDA_PREFIX/etc/conda/activate.d/gotodirs.sh
> #!/bin/bash
> pushd /tmp/myproject
> EOF
(myproject) [watchmen@manhattan ~]# chmod +x $CONDA_PREFIX/etc/conda/activate.d/gotodirs.sh
(myproject) [watchmen@manhattan ~]# pwd
/root
(myproject) [watchmen@manhattan ~]# source deactivate
[watchmen@manhattan ~]# source /conda/bin/activate myproject
/tmp/myproject ~
(myproject) [watchmen@manhattan myproject]# pwd
/tmp/myproject

我意识到这个问题很老,但我 运行 遇到了同样的问题并找到了解决方案。

第 1 步:通过 运行ning

找出您的环境目录
conda env list

在 conda Powershell 中。

第 2 步:使用以下命令更改环境目录:

cd [PATH]

或导航到 windows 资源管理器中的目录。 (您可以从步骤 1 的输出中复制路径。 )

第3步:在其中创建以下目录 通过使用命令:

mkdir .\etc\conda\activate.d

或者创建一个新目录 "etc",在其中创建一个新目录 "conda",然后在 conda 中创建最终目录 "activate.d"。 激活环境时,该目录下的所有脚本都会运行。

第 4 步:创建脚本(在 activate.d 目录中) 通过使用命令

cd .\etc\conda\activate.d
new-item . -name set_working_directory.bat -type "file" -value "cd [PATH]"

其中 [PATH] 是您所需工作目录的路径 或者创建一个新文件“.bat” 并在里面写 cd [PATH]。所以如果你想让 conda 切换到目录 C:\user\Documents 例如,你会写 cd C:\user\Documents 并保存文件。

现在,当您 运行 conda activate [your_env] 时,脚本会自动更改您的目录。