我尝试为我的 powershell 环境创建一个终极设置。
我用一堆语句创建了“Microsoft.PowerShell_profiles.ps1”来设置我的默认配置文件。
但是,当我启动 PowerShell 会话时,我得到:
File C:\Documents and Settings\xxx\My Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1 cannot be loaded.
The file C:\Documents and Settings\xxx\My Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1 is not digitally signed. The script will not execute on the system.
默认情况下,Powershell 会限制您运行“不安全”的脚本。运行
get-executionpolicy
命令以查看系统的级别。要降低限制,您可以运行Set-ExecutionPolicy
并将其之一作为参数:还可以阅读 Scott Hanselman 关于签署 Powershell 脚本的智慧之言。
最简单的解决方案是
但这将运行本地磁盘上的所有脚本(并且不在远程区域中 - 就像通过 IE 下载的那样)
您在这里有 3 个选项,您可以让您的脚本由受信任的提供商签名,或者至少由您信任的提供商签名,或者您可以使用 Set-ExecutionPolicy 设置 powershell 以允许外部脚本,或者:
将在本地机器上运行任何不是来自互联网的脚本
将允许任何脚本运行,但如果您从 Internet 下载它,它会要求您确认是否要运行它。
最后,您可以通过右键单击文件来设置要运行的特定脚本,然后单击“属性”。在对话框底部单击“取消阻止”。