如何使用 Node.js 子进程在后台 运行 命令提示符?

How to run command prompt in background using Node.js Child process?

单击按钮我可以使用 Node.js 子进程打开命令提示符。

var child_process = require('child_process');

 let command = `start cmd.exe /K "cd /D c:/Users && java"`

 let process = child_process.spawn(command, [], { shell: true }) //use `shell` option

使用上面的代码我可以在指定位置打开命令提示符和 运行 Java 命令。

现在我的问题是如何在不打开命令提示符 (cmd) 的情况下在后台执行相同的过程?

Spawn 具有 cwd(当前工作目录)选项,您可以指向该选项以打开进程。

var child_process = require('child_process');

let bin = 'java';
let cliArgs= ['-version'];
let options = {
  spawn: true,
  cwd: 'c:/Users'
}

let command = child_process.spawn(bin, cliArgs, options ) //use `shell` option

command.stdout.on('data', (data) => {
  console.log(`stdout: ${data}`);
});

command.stderr.on('data', (data) => {
  console.log(`stderr: ${data}`);
});

command.on('close', (code) => {
  console.log(`child process exited with code ${code}`);
});