ben şöyle çıkmak için düğüm işlemini kendisi ön planda bir çocuk sürecini çalıştırmak ve izin edebilmek için beklenebilir child_process.spawn
için the docs göre:node.js: ön planda ve çıkış müstakil çocuğu yumurtlamaya nasıl
handoff-exec.js
:
'use strict';
var spawn = require('child_process').spawn;
// this console.log before the spawn seems to cause
// the child to exit immediately, but putting it
// afterwards seems to not affect it.
//console.log('hello');
var child = spawn(
'ping'
, [ '-c', '3', 'google.com' ]
, { detached: true, stdio: 'inherit' }
);
child.unref();
yerine ping
komutunun çıktısını görme, sadece herhangi bir ileti veya hatasız çıkar.
node handoff-exec.js
hello
echo $?
0
Peki ... bu ana çıkış olarak ön planda bir çocuk çalıştırmak için (hiç ya) node.js mümkündür?
UPDATE: console.log('hello');
'un kaldırılmasının çocuğun çalışmasına izin verdiğini buldum, ancak yine de ön plandaki stdin denetimini çocuğa iletmiyor.
Olası yinelenen http://stackoverflow.com/questions/32358845/how-do-i-listen-and-spawn-multiple-child-process- in-nodejs) –
Hayır. Bu, çoklu çocuk süreçlerine JS referanslarını yakalamak için JavaScript'te bir kapatma kullanmaktan ibarettir. Bu süreç referansları ve çocuğun standart girdinin kontrolünü ele geçirmesi ile ilgilidir. – CoolAJ86
Değeri için kodunuzu çalıştırmayı denedim ve beklediğim gibi çalıştım - düğüm işlemi çıktı ve ping komutu çıkışı stdout'a yazdırıldı. Bu Mac OS ve node.js v5.4.1 üzerindedir. Eğer ben çok garip buluyorum console.log uncomment eğer işe yaramıyor. –