共享的系统命令使用NodeJS的子过程(child_process)
介绍了Nodejs子过程。子过程的Nodejs提供与系统进行交互的重要界面。它的主要API有标准输入、标准输出和标准错误输出接口。对Nodejs子过程的简要介绍
的Nodejs过程提供给系统的重要接口,其主要API:
标准输入、标准输出和标准错误输出接口
Child.stdin得到标准输入
child.stdout获取标准输出
child.stderr获取标准错误输出
得到:child.pid子进程的PID
提供一个生成子进程的重要途径:child_process.spawn(CMD,args = { },{选项})
提供的系统命令直接执行的重要途径:child_process.exec(CMD,{选项},回调)
杀进程的方式:child.kill(信号= 'sigterm)
例1:通过子进程获得系统内存的使用情况
把下面的代码保存为free.js:
复制代码代码如下所示:
VaR产卵=需要('child_processSpawn),
自由=产卵(自由,{m});
控制台的标准输出和捕获/打印
Free.stdout.on ('data', function (data) {
console.log('standard输出:+数据;
});
捕获标准错误输出并将其打印到控制台
Free.stderr.on(数据功能(数据){
console.log('standard错误输出:+数据;
});
注册过程关闭事件
Free.on('exit功能(编码、信号){
console.log(儿童过程已经撤回,代码:+代码);
});
代码执行后的结果:
free.js美元结
标准输出:
全部使用的空闲共享缓冲区缓存
Mem:394919741974013595
缓冲区/缓存: + 8793070
互换:390503905
子进程已退出,代码:0
上面的输出相当于命令行的执行:自由M命令。
通过这个简单的例子,我们了解了子过程的使用。下面是另一个例子来演示使用。
实例二:对过程统计系统登录数
把下面的代码保存为last.js
复制代码代码如下所示:
VaR的执行=需要('child_process)。exec,
最后= exec(WC -我|);
Last.stdout.on(数据功能(数据){
console.log('standard输出:+数据);
});
Last.on('exit功能(代码){
console.log(儿童的过程已经结束,代码:+代码);
});
执行代码:
last.js美元结
标准输出:203
子进程已关闭,代码:0
直接在命令行输入:上次我| unitid。