0

在节点脚本中,我生成了一个执行批处理文件 run.bat 的子进程,要终止由批处理文件启动的程序,我需要将 ctrl+c 组合发送到子进程,我需要发送使用 stdin.write() 方法将 ctrl+c 组合到程序中。

var hmc = require('child_process').spawn('cmd');
hmc.stdin.write('run.bat \n');
4

1 回答 1

1

A CTRL+C相当于SIGINT在 Windows 上发送 a。与其尝试向进程发送击键,不如发送信号。这可以使用子进程方法或其他进程来完成,前提是您具有子进程 ID:

hmc.kill('SIGINT');
// or from another process
process.kill(hmc.pid, 'SIGINT');
于 2013-10-16T15:03:54.210 回答