Anaconda Prompt 和 Anaconda Powershell Prompt 有什么区别?

RLD*_*RLD 15 python windows powershell cmd anaconda

我正在使用 Anaconda 学习 Python。早些时候我只有Anaconda Prompt。但是在最近通过 Anaconda 更新后

conda update conda
Run Code Online (Sandbox Code Playgroud)

我是来看Anaconda Powershell Prompt 的。我在之前在Anaconda Prompt 中使用过的新Powershell Prompt 中尝试过的命令很少。这些命令工作正常。

现在,我的问题是 Anaconda 给出 2 个命令提示的原因是什么?它们的功能或能力之间有什么区别吗?

我的操作系统是 Windows 7,Conda 版本是 4.6.12。

YaO*_*OzI 12

首先,从执行Python相关命令(、、、、python等)到运行Python脚本(例如),没有ipython什么区别。所以不用担心;)jupytercondapython helloworld.py

\n

然后,顾名思义,唯一的区别是运行命令的Windows shell 环境:(命令提示符) 与.condacmd.exepowershell.exe

\n
\n

现在让我们更多地讨论一下区别:(参考

\n
\n

简而言之,它cmd.exe是 Windows NT 引入的一个简单 shell,具有与 DOS 相同的基本语法和功能。它的功能相对有限,特别是与Unix/Linux shell相比。

\n

PowerShell是一种现代 shell 实现具有各种额外的功能(例如命令彩色突出显示)。

\n
\n

因此,在Anaconda Powershell Prompt中,您可以运行一些 powershell 命令,如下所示:

\n
> $PSVersionTable\n\nName                           Value\n----                           -----\nPSVersion                      5.1.18362.752\nPSEdition                      Desktop\nPSCompatibleVersions           {1.0, 2.0, 3.0, 4.0...}\nBuildVersion                   10.0.18362.752\nCLRVersion                     4.0.30319.42000\nWSManStackVersion              3.0\nPSRemotingProtocolVersion      2.3\nSerializationVersion           1.1.0.1\n\n> $env:PATH\nC:\\Users\\user-name\\anaconda3;C:\\Users\\user-name\\anaconda3\\Library\\mingw-w64\\bin;...\n
Run Code Online (Sandbox Code Playgroud)\n

但是在Anaconda Prompt中,上述命令不会被识别,你可以运行以下命令:

\n
>ver\n\nMicrosoft Windows [\xe7\x89\x88\xe6\x9c\xac 10.0.18363.815]\n
Run Code Online (Sandbox Code Playgroud)\n
\n

在幕后,Anaconda Powershell PromptAnaconda Prompt只是调用不同命令的两个快捷方式:

\n
%windir%\\System32\\WindowsPowerShell\\v1.0\\powershell.exe -ExecutionPolicy ByPass -NoExit -Command "& \'%USERPROFILE%\\anaconda3\\shell\\condabin\\conda-hook.ps1\' ; conda activate \'%USERPROFILE%\\anaconda3\' "\n
Run Code Online (Sandbox Code Playgroud)\n
%windir%\\System32\\cmd.exe "/K" %USERPROFILE%\\anaconda3\\Scripts\\activate.bat %USERPROFILE%\\anaconda3\n
Run Code Online (Sandbox Code Playgroud)\n

在此输入图像描述

\n


Rol*_*ber 2

Windows 提供两种命令行环境:传统的“Prompt”( cmd.exe) 和较新的“PowerShell”。您可以将 Anaconda 与其中任何一个一起使用。

Windows 命令的文档涵盖了两者。