4
我正在嘗試在node.js中爲通過帶參數的命令行執行的另一個node.js腳本編寫測試腳本。當在終端中執行腳本時,可以使用process.argv [2],process.argv [3]等訪問參數。但是,當腳本在測試腳本中使用child_process.exec執行時,這些參數不存在)。如何使用child_process.exec訪問node.js子進程中的命令行參數?
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執行的時候,因爲我當我從終端執行它做同樣的行爲有什麼建議?
感謝您的幫助喬我發現問題,這是一個路徑問題。 – TankofVines