有时我们在运行PowerShell脚本的时候,会突然遇到这个问题:
无法加载文件 C:\Program Files\nodejs\node_global\express.ps1, 因为在此系统上禁止运行脚本。有关详细信息,请参阅 https:/go.microsoft.com /fwlink/?LinkID=135170 中的 about_Execution_Policies。 +CategoryInfo : SecurityError: (:) [],PSSecurityException +FullyQualifiedErrorId : UnauthorizedAccess
如图:
- 这应该是由于计算机在启动 Windows PowerShell 时,执行策略很可能是
Restricted
(受限制的),也就是默认设置。 Restricted这个执行策略不允许任何脚本运行
。- 可以打开PowerShell 输入
get-executionpolicy
来查看,计算机目前的执行策略。如出现:Restricted
,则说明执行策略受限,不允许运行未签名的脚本。
解决:
以管理员身份打开PowerShell 输入 set-executionpolicy remotesigned
(设置执行策略远程签名)
例:
此时会提示:
输入:Y,回车即可。
【温馨提示】
如上面内容能够看懂,那就赶紧去操作吧,不用往下看了,因为下面我将用一个安装express脚手架的例子,来使以上操作更加明朗。
举个安装express脚手架的例子。
① 输入npm i express-generator -g
进行全局安装,会有安装成功的信息
② 然后输入express --version
查看版本信息,那么问题就来了
③ 这个时候怎么办呢,就是用刚开始上面介绍的解决方法:输入 set-executionpolicy remotesigned
(设置执行策略远程签名),然后输入:Y,回车
④ 此时,再次输入express --version
查看版本信息,成功了有木有!
⑤ 输入express --view=ejs test
,在此目录就会创建一个test文件夹(test为项目名,非固定)
⑥ 使用 cd test
命令,进入到该项目里
⑦ 输入npm i
,进行实例化
⑧ 输入npm start
,执行
⑨ 打开浏览器,输入localhost:3000
(3000为默认端口,可根据自己需要,到bin目录下的www文件内进行更改),出现以下页面,则代表安装成功,恭喜恭喜~~