Я запускаю электронное приложение с Wraith. Я использую узел child_process
, и он работает очень хорошо, за исключением отмены скрипта / команды bash.
Мне не удалось найти решение, которое работает для меня в Интернете.
Я хочу запустить команду, которая по существу будет работать аналогично ctrl + c
, но из моего приложения Electron.
Я сократил свой код, чтобы его было легче читать:
My index.js
file
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()
.
Этот метод несколько раз появлялся при поиске ответов. У кого-нибудь есть представление о том, что я делаю не так?
Спасибо, все
Ваша помощь очень ценится
Мое