位置: 编程技术 - 正文

Nodejs中调用系统命令、Shell脚本和Python脚本的方法和实例(nodejs 调用命令行)

编辑:rootadmin

推荐整理分享Nodejs中调用系统命令、Shell脚本和Python脚本的方法和实例(nodejs 调用命令行),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:nodejs调用c函数,nodejs调用go,nodejs调用npm命令,js调用nodejs写的代码,nodejs调用exe方法,nodejs 调用命令行,nodejs调用go,nodejs调用exe方法,内容如对您有帮助,希望把文章链接给更多的朋友!

每种语言都有自己的优势,互相结合起来各取所长程序执行起来效率更高或者说哪种实现方式较简单就用哪个,nodejs是利用子进程来调用系统命令或者文件,文档见 标准输入、标准输出及标准错误输出的接口。

NodeJS 子进程提供了与系统交互的重要接口,其主要 API 有:

标准输入、标准输出及标准错误输出的接口

child.stdin 获取标准输入 child.stdout 获取标准输出 child.stderr 获取标准错误输出 获取子进程的PID:child.pid 提供生成子进程的方法:child_process.spawn(cmd, args=[], [options]) 提供直接执行系统命令的方法:child_process.exec(cmd, [options], callback) 提供调用脚本文件的方法:child_process.execFile(file, [args], [options], [callback])提供杀死进程的方法:child.kill(signal='SIGTERM')

用实例来感受一下,很有意思的,呵呵~~

1、利用子进程调用系统命令(获取系统内存使用情况)

新建nodejs文件,名为cmd_spawn.js,代码如下:

下面是运行该脚本和直接运行命令'free -m'的结果,一模一样:

2、执行系统命令(child_process.exec())

这个我还是很常用的,功能感觉比上面的强大那么一点点。比如我很喜欢关注天气,现在我要curl一下天气的接口返回json格式的数据,可能我要对它进行一番操作,这里就打印出来不操作。

新建nodejs文件,名为cmd_exec.js:

来感受一下直接curl出来和通过运行脚本的出来的结果是一样一样的:

Nodejs中调用系统命令、Shell脚本和Python脚本的方法和实例(nodejs 调用命令行)

3、调用传参数的shell脚本(child_process.execFile())

这个要先准备个shell脚本,比如我要连到一台服务器,来修改它的密码,则我要提供IP,user,new pwd,old pwd,新建shell脚本文件change_password.sh:

然后我准备个nodejs文件来调用这个shell脚本,叫file_changepwd.js:

这里就不方便贴运行结果了,不过我可以用人格保证,它是经过测试的。

看过上面的,其实调用python脚本就没什么悬念了,本质上也就是执行命令。

4、调用python脚本(python脚本本身是传参数的)

这里插入一个题外话,下面这段是对python传参数的简单说明一下:

运行结果:

我也来准备一个nodejs文件来调用这个python脚本(我对py_test.py做了修改,见下面),file_python.js:

运行结果如下:

还是挺赞的,又为完成了一篇精致的博客。哈哈~~

Nodejs中读取中文文件编码问题、发送邮件和定时任务实例 关于nodejs读取中文文件真是折腾了不少时间,网上各种方案,最后没有一个适用我,好在解决了。下面的三个知识点都是从项目中抽出的,要单独运行

AngularJS + Node.js + MongoDB开发的基于高德地图位置的通讯录 一、闲扯有一天班长说了,同学们希望我开发一个可以共享位置的通讯录,于是自己简单设计了下功能。包括用户角色、发表微博、共享位置等等。这

node爬取微博的数据的简单封装库nodeweibo使用指南 一、前言就在去年月份,有个想法是使用node爬取微博的数据,于是简单的封装了一个nodeweibo这个库。时隔一年,没有怎么维护,中途也就将函数形式

标签: nodejs 调用命令行

本文链接地址:https://www.jiuchutong.com/biancheng/377940.html 转载请保留说明!

上一篇:nodejs中实现路由功能(nodejs 路由)

下一篇:Nodejs中读取中文文件编码问题、发送邮件和定时任务实例(nodejs 读取文件)

  • 个人独资企业是否享受六税两费政策
  • 开农贸市场挣钱吗
  • 企业实缴不到位怎么办
  • 财报一季度
  • 残疾人保障金零申报怎么填写
  • 已经认证的发票对方可以作废吗
  • 工业企业销售成本如何计算
  • 存货内部交易抵消通俗讲解
  • 股东出资方式和比例是否合法?并说明理由
  • 对赌协议补偿款计入哪个科目
  • 可以采用三栏式的明细账的有
  • 不动产税征收标准
  • 开专票都需要什么资料
  • 会员费怎么记账
  • 企业劳务发票怎么开,税率是多少
  • 小规模纳税人转成一般纳税人条件
  • 2021印花税零申报怎么报
  • 为什么有些单位一直在招聘
  • 企业购买黄金如何处理
  • 需要清卡才能开票吗
  • 外国人的纳税人识别号是护照号吗
  • 销售不动产差额征收增值税
  • 贷款买电脑的故事
  • 采购审计要点
  • 购买超市购物卡打几折
  • 图书对方开具的证明
  • 网卡运行异常
  • 农产品的增值税率
  • 合同尾款一般多少
  • fsrec.sys
  • 混合销售兼营如何纳税
  • 用友标准版怎么反结账
  • 观察者模式 mvc
  • 固定资产全额折旧
  • 设置浏览器显示网络异常
  • php fetchall
  • 自查补缴增值税如何申报
  • 内斯塔特点
  • 拉贾安帕特群岛地图中文版
  • 专利代理服务费计入什么科目
  • 购物卡怎么开发票比较好
  • 代发工资的会计科目
  • python设置断点
  • 出租房屋房产税计算
  • 多付款退回怎样写说明
  • mongodb $lookup
  • 给离职员工买社保的风险
  • 销售货物收到货款
  • 工资表怎么每个都有表头
  • 有限责任公司分类
  • 差额冲账法
  • sql server2012新建一个数据表
  • 防伪税控技术
  • 二手车置换新车需要什么手续
  • 以股权入资该怎么办
  • 接受小规模纳税人的货运服务
  • 什么情况下交劳务税
  • 补交增值税如何入账
  • 法定节假日报税顺延几天
  • windows10 mobile最后更新
  • xp系统无法重装系统
  • fedora下的bridge和nat设置方法
  • pcs system
  • linux datetime命令
  • 重装系统后没声音怎么解决win7
  • 操作系统的定义
  • linux修改分组
  • win8.1怎么优化才流畅
  • main报错
  • 基于jquery实现小说
  • Android之Volley
  • javascript异步编程
  • jquery中如何获取元素?
  • js设置rem
  • 信息流广告与原生广告的区别
  • android ui自动化测试
  • 出租车票真伪查询官网
  • 企业税收筹划中的涉税风险及其防范
  • 广东省电子税务局登录方式
  • 长春市征收中心
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设