一尘不染

如何从package.json“脚本”执行powershell ps1脚本?

node.js

如何从package.json“脚本” 执行PowerShell ps1脚本?

我知道如何在package.json“ scripts”中设置基本脚本。例如,使用以下配置,我可以执行npm run test该命令,该命令将向控制台输出“这仅仅是测试”:

"scripts": {
  "test": "echo \"this is only a test\""
}

但是,我有一个更高级的场景,我想执行一个PowerShell脚本。像这样:

"scripts": {
  "buildAngular": "buildAngular.ps1"
}

我可以通过scripts对象执行这样的ps1脚本吗?是否需要任何特殊的设置/配置?还有其他限制吗?


阅读 700

收藏
2020-07-07

共1个答案

一尘不染

假设powershell位于您的PATH中,您可以这样称呼它:

"scripts": {
    "test": "@powershell -NoProfile -ExecutionPolicy Unrestricted -Command ./test.ps1"
}

在Windows 7和Powershell v4上进行了测试。

局限性是您需要在路径中安装Powershell。我没有在Linux上使用Powershell对其进行测试,因此不确定当前是否可以将该解决方案移植到其他平台。

2020-07-07