在使用 vscode 内置的程序终端时,许多用户可能会遇到“系统禁止脚本运行的错误”。这是由于 powershell 的执行策略设置所导致的。
解决方法:
以管理员身份运行 Windows PowerShell,输入以下命令查看当前的执行策略:
Get-ExecutionPolicy
如果输出显示为 Restricted,表示当前策略是禁止运行脚本的。
接下来,输入以下命令并按提示操作:
Set-ExecutionPolicy RemoteSigned
系统会提示您输入参数,选择 RemoteSigned 并按回车键。随后会出现确认提示:
输入 Y 确认更改。
完成以上步骤后,VScode 终端中的脚本运行问题应该得到解决。
Windows PowerShell 执行策略知识点:
PowerShell 的执行策略是一种安全机制,用于防止恶意脚本的自动运行。Windows 家用版默认设置为 Restricted,即禁止运行任何脚本。
要查看系统上的执行策略,可以使用以下命令:
Get-ExecutionPolicy -List
输出结果可能如下:
Scope ExecutionPolicy ----- --------------- MachinePolicy Undefined UserPolicy Undefined Process Undefined CurrentUser Undefined LocalMachine Unrestricted
或者直接使用:
Get-ExecutionPolicy
如果输出为 Restricted,表示系统禁止运行任何脚本。
PowerShell 的执行策略有以下几种:
Restricted,服务器 Windows 默认 RemoteSigned。Undefined,则有效策略为 Restricted。
以加载任何配置文件和运行任何脚本,但会对未签名的网络脚本进行运行前提示。(不安全)为了在安全与便捷之间取得平衡,建议将执行策略设置为 RemoteSigned。执行以下命令:
Set-ExecutionPolicy RemoteSigned
系统会提示确认更改,输入 Y 即可完成设置。