Webpage 子进程模块



Phantomjs 子进程模块有助于与子进程进行交互,并使用 **stdin /stdout/stderr** 与它们通信。子进程可用于 **打印、发送邮件** 或 **调用以其他语言编写的程序** 等任务。要创建一个子进程模块,需要对其进行引用。

例如 −

var process = require("child_process");

Spawn 方法

使用 spawn 子进程,可以订阅其 **stdout** 和 **stderr** 流,以实时获得数据。

语法

其语法如下 −

var spawn = require('child_process').spawn;

示例

我们来看一个 spawn 方法的示例。

var process = require("child_process")
var spawn = process.spawn
var child = spawn("cmd", ['/c', 'dir']);

child.stdout.on("data", function (data) {
   console.log("spawnSTDOUT---VALUE:", JSON.stringify(data))
})
child.stderr.on("data", function (data) {
   console.log("spawnSTDERR:", JSON.stringify(data))
})
child.on("exit", function (code) {
   console.log("spawnEXIT:", code)
})

输出

上述程序会生成以下输出。

spawnSTDOUT---VALUE: " Volume in drive C is OS\r\n"
spawnSTDOUT---VALUE: " Volume Serial Number is 7682-9C1B\r\n\r\n Directory of C:
\\phantomjs\\bin\r\n\r\n"
spawnSTDOUT---VALUE: "20-05-2017  10:01
<DIR>          .\r\n20-05-2017  10:01
<DIR>          ..\r\n13-05-2017  20:48   12 a,txt.txt\r\n07-05-2017  08:51
63 a.js\r\n06-05-2017  16:32           120,232 a.pdf\r\n13-05-2017  20:49 
spawnEXIT: 0 
广告