如何杀死命令行进程从childprocessnodejs开始



我该如何停止它,它在我停止nodejs后继续运行。我尝试process.kill((,但无法运行

const process = require('child_process')
const child = process.exec('ping 8.8.8.8 -t')
setTimeout(()=>child.kill(2),10000)

在阅读了几个小时的nodejs文档后,我发现这是为那些有同样问题的

const process = require('child_process')
const child = process.execFile('ping 8.8.8.8',['-t'],{cwd:'your working direct'})
setTimeout(()=>child.kill(2),10000)//now kill() working

我如下修改了您的代码以清除错误:

const process = require('child_process')
const child = process.spawn('ping 8.8.8.8 -t') // instead of process.exec
setTimeout(() => {
console.log(child.kill(2)) // --> false == failed
}, 10000);
child.on('error', (code, signal) => {
console.log(`${code}`) // --> Error: spawn ping 8.8.8.8 -t ENOENT
});

ping命令需要在-t后面有一个参数(根据终端:ping: option requires an argument -- t

相关内容

  • 没有找到相关文章

最新更新