npm script命令从另一个package.json运行脚本命令

npm script命令从另一个package.json运行脚本命令,npm,Npm,我有两个使用npm的独立项目,所以我两个都有: 一些基本文件夹/projectA/package.json和一些基本文件夹/projectB/package.json 每个文件中都有一个脚本部分 如果我转到some\u base\u文件夹/projectA/并运行npm run script test,它会按照应该的方式执行some\u base\u文件夹/projectA/package.json的scripts部分中的test命令 我可以在一些基本文件夹/projectB/package.j

我有两个使用npm的独立项目,所以我两个都有:
一些基本文件夹/projectA/package.json
一些基本文件夹/projectB/package.json

每个文件中都有一个
脚本
部分

如果我转到
some\u base\u文件夹/projectA/
并运行
npm run script test
,它会按照应该的方式执行
some\u base\u文件夹/projectA/package.json的scripts部分中的test命令

我可以在
一些基本文件夹/projectB/package.json中放入什么作为
脚本的值:{test_projectA:'??}/code>,这样当我在
一些基本文件夹/projectB/
中运行
npm run script test_projectA时
执行项目A的
测试
脚本

我尝试了
。/projectA/npm运行脚本测试
,但它说:

'..' is not recognized as an internal or external command,
operable program or batch file.

我在windows 7下运行,但更喜欢在linux上也能正常工作的解决方案。

事实证明,它非常简单:

"scripts": {
  test_projectA:"cd ../projectA && npm run-script test"
}
我最终使用了:

“脚本”:{
“作业”:“cd./sub&\”$npm_execpath\“运行子作业”,
...
}
因为这也适用于您应该使用的纱线

至于纱线:

yarn --cwd path/to/your/other/folder [command]

似乎没有显示我的子进程中的日志语句。您知道如何执行吗?您可以使用
--loglevel verbose
另请参见@yellowsir的答案,了解跨包管理器解决方案(也适用于纱线)。对我来说,这是一个显著的改进。对于投票最多的答案,我得到了一些关于冲突bcrypt库版本的错误(我想是因为我使用了NPM库,从中运行命令,在另一个文件夹中运行命令…而不是它自己的文件夹)。通过使用此答案中所示的环境变量,它修复了这一问题。您应该接受此答案IMHO。是的!谢谢!我正在使用Thread,但我不想将Thread命令硬编码到我的package.json中。很遗憾,这不再有效,因为Thread将“按原样”转发参数因此,
npm run foo--bar
具有不同的含义,那么
warn run foo--bar
OP试图从
package.json
而不是从命令中运行它line@MohamedMoselhy没有什么可以阻止您将这些命令放入package.json脚本部分
yarn --cwd path/to/your/other/folder [command]