如何同时运行多个npm脚本?

问题描述 投票:0回答:7

在我的

package.json
中,我定义了两个脚本。我如何同时运行它们?

"scripts": {
    "server": "webpack-dev-server",
    "webpack": "webpack -wd",
},
node.js npm package.json
7个回答
14
投票

通过 npm run 调用脚本,使用 & 进行并行执行,或使用 && 进行顺序执行:

npm run server & npm run webpack

说明:

Use &&  for sequential execution.
Use &  for parallel execution.

4
投票

您可以使用 npm-run-all* 以多种不同的方式组合多个命令
*警告:最后更新于 2018 年

例如,如果您的

package.json
中有以下脚本:

"scripts": {
    "lint":  "eslint src",
    "build": "babel src -o lib"
}

您可以像这样并行运行它们:

$ npm-run-all --parallel lint build

请参阅此问题了解如何按顺序运行多个 npm 命令


3
投票
"scripts": {
    "sw": "webpack-dev-server & webpack -wd"
},

然后

npm run sw

3
投票

到目前为止,语法似乎发生了一些变化,您需要在引号内传递 & 。

下面是我为演示脚本运行的命令。

对于顺序执行:

npm run temp '&&' npm run temp1 

用于并行执行

npm run temp '&' npm run temp1

1
投票

您可以使用像parallelshel这样的模块。

https://www.npmjs.com/package/parallelshell

正如 npm 官方网站所说:

最大的区别是parallelshell是一个npm模块和GNU 平行则不然。虽然他们可能做类似的事情,尽管(GNU) parallel 更高级,parallelshell 是一个更简单的选项 使用 npm 时使用(因为它是一个 npm 模块)。

如果您项目的所有机器上都安装了 GNU Parallel 将会开启,那么一定要使用它! :)

-

这与以下有何不同:

$ cmd1 & cmd2 & cmd3

  • 跨平台——适用于 Unix 或 Windows。

1
投票

使用 同时 运行多个 npm 脚本。

步骤:

  1. 运行

    npm i concurrently
    同时安装。

  2. 修改package.json中的脚本,添加all(您可以更改为其他名称)。

    “脚本”:{ “服务器”:“webpack-dev-server”, "webpack": "webpack -wd", "all": "同时\"npm run server\" \"npm run webpack\"" },

  3. 运行

    npm run all
    执行多个 npm 脚本。

  4. 确认控制台日志中的输出。

0
投票

您可以使用一个

&
来并行运行脚本

"dev": "npm run start-watch & npm run wp-server"

参考链接

© www.soinside.com 2019 - 2024. All rights reserved.