【发布时间】:2013-12-16 22:44:26
【问题描述】:
我正在尝试在 node.js 中为另一个 node.js 脚本编写一个测试脚本,该脚本通过带有参数的命令行执行。在终端中执行脚本时,可以使用 process.argv[2]、process.argv[3] 等访问参数。但是,当使用 child_process.exec( )。
target.js
var arguments = {
arg1: process.argv[2],
arg2: process.argv[3]
};
console.log(arguments.arg1);
// This outputs '100' when target.js is executed from terminal
test.js
var cp = require('child_process');
cp.exec('node target.js 100 200',
function (err, stdout, stderr) {
if (err) {
console.log(err);
}
console.log(stdout);
// process.argv[2] is undefined when executed as a child process
});
关于如何在通过 child_process 执行时获得与我从终端执行时相同的行为有什么建议吗?
【问题讨论】:
标签: node.js