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

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

发布于 2021-02-10 字数 1948 浏览 1151 评论 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

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

原因

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

解决方法

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

Set-ExecutionPolicy RemoteSigned

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

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

Policy 的有效参数

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

如果你对这篇文章有疑问,欢迎到本站 社区 发帖提问或使用手Q扫描下方二维码加群参与讨论,获取更多帮助。

扫码加入群聊

发布评论

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

评论(1

JSmiles 站长 2021-08-25 1 楼

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

关于作者

JSmiles

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

2583 文章
29 评论
84935 人气
更多

推荐作者

清风夜微凉

文章 1 评论 0

为你鎻心

文章 2 评论 0

xxhui

文章 0 评论 0

1PKOH46yx8j0x

文章 0 评论 0

Arthur

文章 0 评论 0