我已经用nodejs编写了一个小命令行程序,我希望能够键入npm run test
并使用下面的参数运行程序。
直接输入以下命令有效,
node.exe scrappee.js -u 'https://github.com/matutter/{}' -us 'cloggie, AirRocks-Flightcontroller' -s '$commit=li.commits > a > span, $sha=.right .commit-tease-sha' -pm .\test\example_parse_module.js
但是我的package.json的内容如下所示,没有任何输出。
"scripts": {
"test" : "node.exe scrappee.js -u 'https://github.com/matutter/{}' -us 'cloggie, AirRocks-Flightcontroller' -s '$commit=li.commits > a > span, $sha=.right .commit-tease-sha' -pm .\\test\\example_parse_module.js"
}
如何使用命令npm run test
运行带有这些参数的scrappee.js脚本?
答案 0 :(得分:8)
问题来自单引号'
在转发参数时由npm转换为“'”,解决方案是用双引号替换它们,如下所示。
"test" : "node.exe scrappee.js -u \"https://github.com/matutter/{}\" -us \"cloggie, AirRocks-Flightcontroller\" -s \"$commit=li.commits > a > span, $sha=.right .commit-tease-sha\" -pm \".\\test\\example_parse_module.js\""