解决 yarn.ps1 cannot be loaded because the execution of scripts is disabled on this system 错误

发布于 2021-02-10 01:10:42 字数 1631 浏览 1545 评论 1

今天使用 yarn 安装 ejs 模板引擎,运行命令后却得到了这个错误:

File C:\Program Files\nodejs\yarn.ps1 cannot be loaded because the
execution of scripts is disabled on this system.
Please see "get-help about_signing" for more details.
At line:1 char:5
+ yarn <<<<  add egg-view-ejs
    + CategoryInfo          : NotSpecified: (:) [], PSSecurityException
    + FullyQualifiedErrorId : RuntimeException

原因

原来是命令行默认不允许执行 *.ps1 脚本文件。运行 ps1 文件会得到上面的错误,可以通过 Get-ExecutionPolicy,来取得当前策略,用Set-ExecutionPolicy 设置当前策略。

解决方法

下面的命令可以解决上面的错误:

Set-ExecutionPolicy RemoteSigned

上面的代码我在执行的手,什么都没有输出,但是在此安装 npm 包的时候,就一切正常了:

Policy 的有效参数

  • -- Restricted:  不载入任何配置文件,不运行任何脚本。 "Restricted" 是默认的。
  • -- AllSigned: 只有被Trusted publisher签名的脚本或者配置文件才能使用,包括你自己再本地写的脚本
  • -- RemoteSigned:  对于从Internet上下载的脚本或者配置文件,只有被Trusted publisher签名的才能使用。
  • -- Unrestricted: 可以载入所有配置文件,可以运行所有脚本文件. 如果你运行一个从internet下载并且没有签名的脚本,在运行之前,你会被提示需要一定的权限。
  • -- Bypass: 所有东西都可以使用,并且没有提示和警告.
  • -- Undefined: 删除当前scope被赋予的Execution Policy.  但是Group Policy scope的Execution Policy不会被删除.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

JSmiles 2021-08-25 19:59:18

经测试,直接在 cmd 里面执行会提示找不到命令,需要在 windows powershell 执行才可以。

~没有更多了~

关于作者

JSmiles

生命进入颠沛而奔忙的本质状态,并将以不断告别和相遇的陈旧方式继续下去。

0 文章
0 评论
84960 人气
更多

推荐作者

漫雪独思

文章 0 评论 0

垂暮老矣

文章 0 评论 0

鹊巢

文章 0 评论 0

萌酱

文章 0 评论 0

雨说

文章 0 评论 0

冰葑

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文