直接运行 Get-ExecutionPolicy 返回当前生效的综合策略值,由 CurrentUser、LocalMachine 等作用域按优先级叠加决定;加 -List 参数可查看各作用域具体设置,便于排查策略覆盖问题。
直接运行 get-executionpolicy 就能快速看到当前生效的执行策略。
这个命令返回的是最终起作用的那个策略值,它由多个作用域(比如 CurrentUser、LocalMachine)叠加后按优先级决定。如果你只关心“现在脚本能不能跑”,这个结果就够了。
如果想看清每个作用域分别设了什么,用带 -List 参数的命令:
- 打开 PowerShell(任意权限,普通用户即可)
- 输入:
Get-ExecutionPolicy -List
你会看到类似这样的输出:
Scope ExecutionPolicy ----- --------------- MachinePolicy Undefined UserPolicy Undefined Process Undefined CurrentUser RemoteSigned LocalMachine Restricted
其中 CurrentUser 和 LocalMachine 是最常被手动修改的两个作用域;Undefined 表示该作用域没设置过策略,不参与最终计算;Process 是当前会话临时策略(比如用 -ExecutionPolicy Bypass 启动的)。
注意:Get-ExecutionPolicy 单独运行时,返回的是综合后的结果;而 Get-ExecutionPolicy -List 才是完整“策略地图”,方便排查为什么明明设过却没生效——比如组策略覆盖了 LocalMachine 设置,或者 CurrentUser 被更高优先级的作用域压住了。
小提示:Restricted 是 Windows 客户端默认值,RemoteSigned 是服务器默认值,两者都允许你敲命令,但限制脚本运行。

















