1
在nodeJS中生成spawn。我剛剛設法使用它來運行bash命令如下。這似乎是非常不方便的,並且我在瀏覽器屏幕上執行操作,因爲該命令會遍歷數據。node.js使用spawn for perl - stdout逐行
ls = spawn('find',['/']);
response.writeHead(200, { "Content-Type": "text/plain" });
ls.stdout.on('data', function (data) {
console.log('stdout: ' + data);
response.write(data);
});
但我想運行一個perl腳本與多個參數。
ls = spawn('blah.pl',['--argstring here', '--arg blah']);
Perl腳本是剛剛寫入得到使用getopts的CPAN LIB參數,並使用CPAN期待LIB雖則一堆東西運行 - 如果我有一個錯誤輸出,輸出和錯誤,但我主要關心的stdout權現在。
事情是這樣給我沒有輸出。似乎完全阻止,直到程序執行完畢......並且這種情況至少持續10分鐘。
我使用spawn錯誤嗎?
這不是一個有效forkbomb?你有多少次致電產卵? – dwerner
等一下,又是什麼投訴?你的節點循環在等待perl上閒置嗎? – jcolebrand
嗯,我有點以爲我稱之爲產卵一次 - 反覆得到輸出。我可以放一個s.stdout.on('end'...在那裏我也想結束循環,但是它是坐在空閒的等待perl的完整標準輸出,而不是一次給它大塊。 – evolution