当前位置:首页 > 日记 > 正文

nodejs 子进程正确的打开方式

nodejs 子进程正确的打开方式

因为库太拙了,需要在 nodejs 里调用子进程来获取数据。然而看到 child_process 的文档真是头疼,这么多种启动子进程的方法直接推到人面前,也没个解释,命名也十分无用。只能一个个地查看详细说明来找到应该使用的那个……所以我整理了一下。

首先是同步创建子进程的那几个函数。会阻塞 nodejs 的主循环。无用。(要是写小脚本的话我直接上 shell 或者 Python 了,干嘛跟自己过不去呢。)

exec :调用 shell 来执行命令的。这部分跟「exec」这个词的 UNIX/C 语义刚好相反。

execFile :不调用 shell,直接执行命令。这命名不明所以。

fork :执行一个 新的 nodejs 进程,并且建立一个专用的 IPC 通道。子进程除了 IPC 通道外与父进程无任何瓜葛!命名真是一如既往地误人子弟。默认使用与父进程相同的可执行文件(nodejs 版本),也可以另外指定。

spawn :相当于 Python 的 subprocess,可以指定是否使用 shell。默认不使用 shell。也支持 cwd 啊 env 啊 argv0 啊之类的参数。

结论:如果需要用 Python 的 subprocess.run / Popen 类似的功能,就使用 child_process.spawn 。 exec 开头的那个函数似乎没啥大用,大概跟 subprocess 的 getoutput / check_call 之类的一样只是有一些预设而已吧。

相关文章

node.js实现回调的方法示例

node.js实现回调的方法示例

方法,回调,示例,电脑软件,node,本文实例讲述了node.js实现回调的方法。分享给大家供大家参考,具体如下:向回调函数传递额外的参数在调用函数中,使用匿名函数中实现需传递的参数,再次匿名函数内调用回调函数。var events = require("events");…

ps如何调整的色阶

ps如何调整的色阶

调整,方法,的色,图片,电脑软件,  图层的色阶在ps中经常会调节,这样可以调出好看的图片。其实这个也不算太难,下面就让小编告诉你ps如何调整图片的色阶的方法,一起学习吧。ps调整图片的色阶的方法1.选定要调整的图层,如下图:2.图像--调整--色阶…

JS中使用gulp实现压缩文件及浏览器

JS中使用gulp实现压缩文件及浏览器

热加载,压缩文件,浏览器,功能,电脑软件,gulp类似于grunt,都是基于Node.js的前端构建工具。不过gulp压缩效率更高。一.安装gulp  首先,你要安装过nodejs,如果没有安装过的同学请自行下载。 先再命令行里输入 npm install gulp -g 下载gu…

es6的数字处理的方法(5个)

es6的数字处理的方法(5个)

方法,数字处理,电脑软件,// Math.trunc方法用于去除一个数的小数部分,返回整数部分。 Math.trunc(4.1) // 4 Math.trunc(4.9) // 4 Math.trunc(-4.1) // -4 Math.trunc(-4.9) // -4 Math.trunc(NaN); // NaN Math.trunc('foo'); // NaN Ma…

如何将word2013转成PDF

如何将word2013转成PDF

转成,如何将,电脑软件,PDF,  我们在使用Word2013编辑好Word文档资料后,需要把文档资料转换成为PDF格式的文件。那么,在这种情况下我们应该怎样做呢?那么下面就由小编给大家分享下将word2013转成PDF的技巧,希望能帮助到您。将word2013转成PDF…

简述Ajax的优点与缺点

简述Ajax的优点与缺点

缺点,优点,电脑软件,Ajax,ajax的优点Ajax的给我们带来的好处大家基本上都深有体会,在这里我只简单的讲几点:1、最大的一点是页面无刷新,在页面内与服务器通信,给用户的体验非常好。2、使用异步方式与服务器通信,不需要打断用户的操作,具有更加迅…

微信小程序实现放大预览功能

微信小程序实现放大预览功能

功能,程序,电脑软件,微信小,需求:当点击图片时,当前图片放大预览,且可以左右滑动实现方式:使用微信小程序图片预览接口我们可以看到api需要两个参数,分别通过下面的data-list和data-src来传到js中wxml代码:<!--图片描述--> <view wx:if="{{item.…

Fireworks如制作折叠效果的菜单

Fireworks如制作折叠效果的菜单

菜单,折叠,效果,电脑软件,Fireworks,现在菜单效果越来越炫,如何实现折叠的效果呢,就几步,很简单,下面我们来看看吧!步骤:1、&ldquo;文件&rdquo;----&ldquo;新建&rdquo;一个图形,尺寸是150x350,当然可以按照需要定义。2、选中左侧的&ldquo;矩形工具&…

怎么在word2007中设置大纲的级别wo

怎么在word2007中设置大纲的级别wo

设置,级别,操作方法,步骤,大纲,  在编辑文档的时候,目录有时是必不可少的一项,但在实际情况当中,那么今天小编就教你怎么在word2007中设置大纲的级别。word2007中设置大纲的级别的步骤选择&ldquo;视图&ldquo;选项卡word2007中设置大纲的级别…

Excel表格中RANK函数怎么做成绩排

Excel表格中RANK函数怎么做成绩排

函数,成绩排名,怎么做,表格,成绩,  当你用excel时需要根据成绩或者业绩进行排序的时候,你是否还在一个一个的比照呢,那样就太没效率了。以下是小编为您带来的关于Excel中RANK函数做成绩排名,希望对您有所帮助。Excel中RANK函数做成绩排名使…

PS图层模式中叠加是什么效果?

PS图层模式中叠加是什么效果?

叠加,图层,模式,效果,电脑软件,PS图层模式中叠加是什么效果?把放置或应用到一个层上的颜色同背景色进行混 合,然而,却能得到有趣的效果,下面我们来看看吧!步骤:1、选择&ldquo;渐变工具&rdquo;,并设置渐变色;2、填充渐变色;3、在文档中,用&ldquo;文…

JavaScript两个变量交换值的实现方

JavaScript两个变量交换值的实现方

方法,变量交换,两个,电脑软件,JavaScript,概要本文主要描述,如何不使用中间值,将两个变量的值进行交换。一、普通做法var a = 1, b = 2, tmp;tmp = a;a = b;b = tmp;普通的做法就是声明多一个临时变量tmp,进行数据交换过程中的缓存。这样的做…