无法加载文件 C:\Users\Coz\Documents\WindowsPowerShell\profile.ps1,因为在此系统上禁止运行脚本。有关详细信息,请参阅
https:/go.microsoft.com/fwlink/?LinkID=135170 中的 about_Execution_Policies。
Windows PowerShell 版权所有(C) Microsoft Corporation。保留所有权利。 安装最新的 PowerShell,了解新功能和改进!https://aka.ms/PSWindows . : 无法加载文件 C:\Users\Coz\Documents\WindowsPowerShell\profile.ps1,因为在此系统上禁止运行脚本。有关详细信息,请参阅 https:/go.microsoft.com/fwlink/?LinkID=135170 中的 about_Execution_Policies。 所在位置 行:1 字符: 3 + . 'C:\Users\Coz\Documents\WindowsPowerShell\profile.ps1' + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : SecurityError: (:) [],PSSecurityException + FullyQualifiedErrorId : UnauthorizedAccess PS C:\WINDOWS\system32>
问题原因
PowerShell 或者 windows 终端启动时,为了确保安全,文件的执行策略默认设置为 Restricted 。 Restricted 执行策略不允许任何脚本运行。
有关文件的执行策略可参考:
关于执行策略 - PowerShell | Microsoft Docs
介绍 PowerShell 执行策略并说明如何管理它们。
其中写到:Restricted 执行策略允许单独的命令,但不允许任何脚本运行,将阻止运行所有脚本文件,包括格式设置和配置文件 (.ps1xml) 、模块脚本文件 (.psm1) 和 PowerShell 配置文件 (.ps1) 。
而 AllSigned 和 RemoteSigned 执行策略可防止 Windows PowerShell 运行没有数字签名的脚本。
AllSigned 要求所有脚本和配置文件都由受信任的发布者签名,包括在本地计算机上编写的脚本。
Bypass 没有任何内容被阻止,也没有警告或提示。
Default 默认执行策略。Windows客户端受限或Windows服务器远程登录。
RemoteSigned 要求从Internet下载的所有脚本和配置文件都由受信任的发布者签名。Windows server计算机的默认执行策略。
Restricted 不加载配置文件或运行脚本。Windows客户端计算机的默认执行策略。
Undefined 没有为作用域设置执行策略。从未由组策略设置的范围中删除分配的执行策略。如果所有作用域中的执行策略都未定义,则有效的执行策略将受到限制。
Unrestricted 从PowerShell 6.0开始,这是非Windows计算机的默认执行策略,无法更改。加载所有配置文件并运行所有脚本。如果您运行的是从internet下载的未签名脚本,则在运行之前系统会提示您输入权限。
解决方法
因此只需要降低安全性等级,将执行策略改为 RemoteSigned 即可执行脚本,在窗口中使用 Set-ExecutionPolicy 命令即可。
关于 Set-ExecutionPolicy 命令可参考:
Set-ExecutionPolicy (Microsoft.PowerShell.Security) - PowerShell | Microsoft Docs
具体方法
以管理员身份打开 PowerShell 或者 windows 终端,执行以下命令并确认。
set-executionpolicy remotesigned
然后再次运行该脚本文件即可通过。
例如:
PS C:\WINDOWS\system32> get-executionpolicy Restricted PS C:\WINDOWS\system32> set-executionpolicy remotesigned 执行策略更改 执行策略可帮助你防止执行不信任的脚本。更改执行策略可能会产生安全风险,如 https:/go.microsoft.com/fwlink/?LinkID=135170 中的 about_Execution_Policies 帮助主题所述。是否要更改执行策略? [Y] 是(Y) [A] 全是(A) [N] 否(N) [L] 全否(L) [S] 暂停(S) [?] 帮助 (默认值为“N”): Y PS C:\WINDOWS\system32> get-executionpolicy RemoteSigned
恢复默认设置
通过修改将降低系统的安全性,可能带来被病毒或恶意软件攻击的风险。
因此,在执行完自己编写的脚本文件后,可以将设置改回默认,执行以下命令即可
set-executionpolicy Restricted
同样需要进行确认。
其他
如果需要了解计算机上的现用执行策略,可以打开PowerShell 然后输入
get-executionpolicy
原文链接:https://blog.csdn.net/Ximerr/article/details/123498701
本站文章除注明转载/出处外,均为原创,若要转载请务必注明出处。转载后请将转载链接通过邮件告知我站,谢谢合作。本站邮箱:admin@only4.work
尊重他人劳动成果,共创和谐网络环境。点击版权声明查看本站相关条款。