在 node.js 中开启新的命令符窗口可以使用 child_process
模块的 spawn
方法。
具体使用方法如下:
const { spawn } = require('child_process');
// 开启新的命令符窗口,并执行命令 `cmd`
const child = spawn('cmd', [], {
// 在新的窗口中执行命令
detached: true,
// 使用默认的 shell 环境
shell: true
});
其中,第一个参数是要执行的命令(在这里是 cmd
,即 Windows 下的命令符),第二个参数是命令的参数(可以为空数组),第三个参数是配置选项。
在配置选项中,detached
设置为 true
表示在新的窗口中执行命令,shell
设置为 true
表示使用默认的 shell 环境(在 Windows 下是 cmd
)。
注意:使用 spawn
方法开启新的命令符窗口后,原有的窗口会继续执行 node.js 脚本,新的命令符窗口也会同时打开。如果希望新的命令符窗口打开后原有的窗口关闭,可以使用 child_process
模块的 exec
方法。
例如:
const { exec } =require('child_process');
exec('start cmd', (error, stdout, stderr) => {
if (error) {
console.error(`exec error: ${error}`);
return;
}
console.log(`stdout: ${stdout}`);
console.log(`stderr: ${stderr}`);
});
在这种情况下,新的命令