在 Windows 终端中设置 Anaconda powershell 提示配置文件

Setting up an Anaconda powershell prompt profile in Windows Terminal

我试图在 Windows 终端中创建一个配置文件,该配置文件将模拟 Anaconda Powershell 提示符的行为。当我在我的 windows 机器上右键单击 Anaconda Powershell Prompt 快捷方式上的 > 属性时,“目标”字段显示以下内容:

%windir%\System32\WindowsPowerShell\v1.0\powershell.exe -ExecutionPolicy ByPass -NoExit -Command "& 'C:\Users\me\miniconda3\shell\condabin\conda-hook.ps1' ; conda activate 'C:\Users\me\miniconda3' "

cmd 上,%WINDIR% 的计算结果为 C:\Windows。所以我创建了一个新的 Windows 终端,并将“目标”字段的内容复制到 settings.json 文件中的 commandline 参数中:

{
    "commandline": "C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -ExecutionPolicy ByPass -NoExit -Command '& C:\Users\amine\Miniconda3\shell\condabin\conda-hook.ps1 ; conda activate C:\Users\amine\Miniconda3'",
    "hidden": false,
    "guid":"{236722dd-af73-416e-b467-67bca56e114d}",
    "name": "Anaconda powershell prompt",
    "font": {"size": 10}
}

不幸的是,当我检查与此配置文件关联的 $env:path 时,它仍然不包含 Miniconda 相关路径。此外,当我 运行 conda 我得到它是一个未知的 cmdlet。 $env:path 在其他方面与常规 powershell 提示相同。

为什么我的自定义配置文件没有在 Windows 终端中激活 Anaconda?我怎样才能让它工作?

查看 this comment 后,我意识到传递给 -command 参数的字符串可能不正确。我将 Windows 终端配置文件中的 commandline 更改为以下内容:

"C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -ExecutionPolicy ByPass -NoExit -Command & 'C:\Users\me\Miniconda3\shell\condabin\conda-hook.ps1' ; conda activate C:\Users\me\Miniconda3"

然后它运行良好。