nodejs + shell(expect)+ child_process

时间:2013-10-11 15:03:31

标签: javascript node.js shell child-process

我在创建javascript时遇到一个小问题。

我有一个生成shell脚本的js(期望,ssh另一台计算机,然后将一些数据发送回nodejs。

我在多线程方面遇到问题。

var cons = spawn('./somescript');
var content;
cons.stdout.on('data', function(block)
{
content += block;
mrdialist = JSON.parse(block);
....
console.log("" + block);
});
console.log("hjdfsdf");
here is some actions with loaded and parced data.

但是当我尝试执行jscript时,它从头开始,并通过加载数据进行所有操作而不加载和解析, 如何在执行后继续执行代码onlu

    console.log("" + block);
    });
    console.log("hjdfsdf");

1 个答案:

答案 0 :(得分:1)

spawn将执行asynchrounsly。

发出事件close时必须执行代码。

var cons = spawn('./somescript');
var content;
cons.stdout.on('data', function(block)
{
content += block;
mrdialist = JSON.parse(block);
....
console.log("" + block);
});

cons.on('close', function () {
    console.log("hjdfsdf");
    // manipulate content
    console.log("content", content);
});