【发布时间】:2023-03-30 17:10:01
【问题描述】:
我正在使用 Wraith 运行一个电子应用程序。我正在使用节点的 child_process,除了取消 bash 脚本/命令外,它的效果非常好。
我无法在网上找到适合我的解决方案。
我想运行一个基本上类似于ctrl + c 的命令,但来自我的 Electron 应用程序。
我已经精简了我的代码以使其更易于阅读:
我的index.js 文件
var electron = require("electron");
var ipc = electron.ipcRenderer;
var shell = require('electron').shell;
var remote = require('electron').remote
var fs = require('fs');
var path = require('path');
var spawn = require('child_process').spawn;
function runScript(index) {
var directory = __dirname + '/src/bash/';
// Works as expected
var vrt = spawn('/bin/sh',
[directory + task, arg1, arg2]);
vrt.stdout.on('data', function (data) {
console.log(data.toString())
});
//This doesn't work
setTimeout(function () {
console.log("should close")
vrt.kill();
}, 1000)
}
console.log 确认脚本继续运行,即使 vrt.kill() 已被调用。
在我寻找答案的过程中,这个方法已经出现了好几次。有谁知道我做错了什么?
谢谢大家
非常感谢您的帮助
萌
【问题讨论】:
标签: node.js electron child-process spawn