exec() 命令未在标准输出中显示输出
exec() command is not showing the output in stdout
我正在使用 exec 命令,以便通过安装 child_process 节点来理解它 module.Below 是代码行。
通过查看输出,它表明我的 exec()
没有按预期工作。
exec.js
console.log('1')
var exec = require('child_process').exec;
console.log('2');
exec('node -v', function (error, stdout, stderr) {
console.log('stdout', +stdout);
console.log('stderr', +stderr);
if (error !== null) {
console.log('exec error: ', + error);
}
});
package.json
{
"name": "exec",
"version": "1.0.0",
"description": "",
"main": "exec.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "",
"license": "ISC",
"devDependencies": {
"child_process": "^1.0.2"
}
}
当运行命令node exec.js
时显示如下输出
1
2
stdout NaN
stderr 0
在每个 console.log
函数调用中,每个变量名前面都有一个 +
。这会尝试将变量的值转换为数字。删除第 5,6 和 8 行中的 +
,代码应按预期 运行。
此外,最好在输出到标准错误时使用 console.error
。
console.log('1')
var exec = require('child_process').exec;
console.log('2');
exec('node -v', function (error, stdout, stderr) {
console.log('stdout', stdout);
console.error('stderr', stderr);
if (error !== null) {
console.log('exec error: ', error);
}
});
我正在使用 exec 命令,以便通过安装 child_process 节点来理解它 module.Below 是代码行。
通过查看输出,它表明我的 exec()
没有按预期工作。
exec.js
console.log('1')
var exec = require('child_process').exec;
console.log('2');
exec('node -v', function (error, stdout, stderr) {
console.log('stdout', +stdout);
console.log('stderr', +stderr);
if (error !== null) {
console.log('exec error: ', + error);
}
});
package.json
{
"name": "exec",
"version": "1.0.0",
"description": "",
"main": "exec.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "",
"license": "ISC",
"devDependencies": {
"child_process": "^1.0.2"
}
}
当运行命令node exec.js
时显示如下输出
1
2
stdout NaN
stderr 0
在每个 console.log
函数调用中,每个变量名前面都有一个 +
。这会尝试将变量的值转换为数字。删除第 5,6 和 8 行中的 +
,代码应按预期 运行。
此外,最好在输出到标准错误时使用 console.error
。
console.log('1')
var exec = require('child_process').exec;
console.log('2');
exec('node -v', function (error, stdout, stderr) {
console.log('stdout', stdout);
console.error('stderr', stderr);
if (error !== null) {
console.log('exec error: ', error);
}
});