如上图所示,我在PowerShell激活ll_ven虚拟环境时,系统提示禁止运行脚本,于是进入它给的网站about_Execution_Policies,发现想要运行脚本很简单,只要改变一下执行策略就行啦,在powershell终端输入如下指令:
Get-ExecutionPolicy #查看当前powershell的执行策略
我的执行结果为:Restricted
由上面的链接文件可知:
Restricted
- Windows 客户端计算机的默认执行策略
- 允许单独的命令,但不允许脚本。
- 阻止运行所有脚本文件,包括格式设置和配置文件 (.ps1xml) 、模块脚本文件 (.psm1) 和 PowerShell 配置文件 (.ps1) 。
所以必须更改powershell的执行策略,在终端输入:
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned #将其策略改成RemoteSigned
我们看一下RemoteSigned是什么策略:
- Windows server 计算机的默认执行策略。脚本可以运行。
- 要求来自受信任的发布者的脚本和配置文件的数字签名,这些脚本和配置文件是从 internet 下载的,其中包括电子邮件和即时消息程序。
- 不需要在本地计算机上编写的脚本上的数字签名,也不需要从 internet 下载。
- 如果未对脚本进行阻止,则运行从 internet 下载的脚本,而不是未签名的脚本,例如通过使用 Unblock-File cmdlet。
- 从 internet 以外的源运行未签名脚本的风险,以及可能是恶意的签名脚本。
由上可知RemoteSigned是允许脚本运行的。
再查看一下当前powershell的执行策略,输出为:RemoteSigned
这时我们运行一下我们需要运行的脚本:
PS E:\python_work\项目三:从Django入手\learning_log> ll_env\Scripts\Activate
(ll_env) PS E:\python_work\项目三:从Django入手\learning_log>
出现了(ll_env)说明虚拟环境已激活,大功告成!