node.js和命令行(cmd.exe)

时间:2012-10-23 13:52:27

标签: windows node.js cmd

我正在寻找解决方案或NPM来从node.js应用程序调用Windows命令行。

我想要的是调用一些批处理文件并在带有node.js的机器上运行它们,当然还有参数并读取它们的输出。

1 个答案:

答案 0 :(得分:8)

您可以使用标准模块child_process.spawn()

来自文档示例:

var spawn = require('child_process').spawn,
    ls    = spawn('ls', ['-lh', '/usr']);

ls.stdout.on('data', function (data) {
  console.log('stdout: ' + data);
});

ls.stderr.on('data', function (data) {
  console.log('stderr: ' + data);
});

ls.on('exit', function (code) {
  console.log('child process exited with code ' + code);
});

'ls'替换为'c:/windows/system32/cmd.exe',将['-lh', '/usr']替换为['/c', 'batfile.bat'],以运行批处理文件batfile.bat