PSSecurityException之PowerShell权限设置
Windows下PowerShell默认的权限级别是Restricted,不允许执行PS脚本(即.ps1文件)。如果在Restricted权限级别下运行,会得到错误信息:
.\XXXX.ps1 : File XXXX.ps1 cannot be loaded because running scripts is disabled on this system. For more information, see about_Execution_Policies at http://go.microsoft.com/fwlink/?LinkID=135170. At line:1 char:1 + .\XXXX.ps1 params[] ... + ~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : SecurityError: (:) [], PSSecurityException + FullyQualifiedErrorId : UnauthorizedAccess |
要解决这类问题,通常的做法是,用管理员权限启动PS命令行,将执行权限修改为RemoteSigned或者Unrestricted:
Set-ExecutionPolicy RemoteSigned
到这里,一般就可以解决大多数情况下的问题。
但是,有的时候会发现有的PS脚本还是会抛出上面的错误。如果你的系统是64位的Windows,那么有可能你执行脚本是调用的powershell.exe并不是你改过权限的那一个。从下面两个位置下运行powershell并查看权限设置:
- C:\Windows\System32\WindowsPowerShell\v1.0
- C:\Windows\SystemWoW64\WindowsPowerShell\v1.0
Get-ExecutionPolicy
如果有Restricted将其改为RemoteSigned或者Unrestricted。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!