使用npm在多个节点项目目录中运行脚本
上下文
我有一个主项目里面有多个节点项目作为子目录。 每一个都有自己的node_modules
目录和package.json
文件。 我想在我的主package.json
文件中定义一个npm脚本,这些文件同时从这些项目的每一个项目运行npm脚本。
代码
我的目录结构是这样的:
main: ... package.json - sub-project-1 - ... package.json - sub-project-2 ... package.json
子项目-1 /的package.json:
... "scripts": { "start": "node run foo.js" }
分项-2 /的package.json:
... "scripts": { "start": "node run bar.js" }
主package.json:
... "scripts": { "start": "/* Here I want to do something like npm sub-project-1/ start && npm sub-project-2/ start */ }
现在,很明显,我可以将sub-project-1/package.json
的start
脚本和sub-project-2/package.json
的启动脚本中的命令复制并粘贴到bash脚本中,然后运行它。 但我希望能够更改这些npm start
脚本,而无需每次手动更改bash脚本。 有没有办法做到这一点?
1.您也可以编写一个python脚本来parsing所有子目录的package.jsons,然后生成master package.json文件
2.or还可以编写一个python脚本来parsing所有子目录的package.jsons,然后生成一个shell脚本,mater package.json将在“start”中调用它。