PowerShell 拦截 .ps1 命令记录
225 字
1 分钟
PowerShell 拦截 .ps1 命令记录
PowerShell 拦截 .ps1 命令记录
现象
在 PowerShell 或 Codex 里运行:
npm -vpnpm -vnpx -v可能报错:
cannot be loadednot digitally signedExecution_Policies但改用 .cmd 可以正常运行:
npm.cmd -vpnpm.cmd -vnpx.cmd -v原因
Windows PowerShell 会优先执行 Node 安装目录里的脚本:
npm.ps1pnpm.ps1npx.ps1这些 .ps1 没有数字签名时,会被当前执行策略拦截。
推荐解决
只修改当前用户的 PowerShell 执行策略:
Set-ExecutionPolicy -Scope CurrentUser -ExecutionPolicy RemoteSigned输入 Y 确认。
这个设置允许本机脚本运行,同时仍会限制从网上下载的未签名脚本,比全局 Bypass 更稳。
临时绕过
不改设置时,直接运行 .cmd:
npm.cmd installpnpm.cmd installpnpm.cmd run dev判断方法
- 报
not digitally signed或Execution_Policies:是 PowerShell 执行策略问题。 .cmd能跑、普通命令不能跑:基本就是.ps1被拦。- 报
sandbox、permission denied、requires approval:通常是 Codex 权限或系统权限问题。
文章分享
如果这篇文章对你有帮助,欢迎分享给更多人!
PowerShell 拦截 .ps1 命令记录
https://firefly-mu-weld.vercel.app/posts/powershell-ps1-execution-policy/