位置: 编程技术 - 正文

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 读取文件)

  • 个人所得税手续费返还时间
  • 一般纳税人金税盘全额抵扣分录
  • 开票名称开错了
  • 公司会计制度由小企业会计准则改为企业会计准则怎么做
  • 发票税号错了怎么重开
  • 资产负债表不平的原因有哪些
  • 企业期货投资收益税务案例
  • 无形资产原值变动账务处理
  • 信用贷的基本准入要求
  • 打官司败诉承担的费用
  • 收到微信公众号退款怎么做账
  • 税控系统维护费账务处理
  • 收到福利费会计分录
  • 年报怎么看
  • 缴纳残疾人就业保险金会计分录
  • 小规模纳税人申报表怎么填
  • 外资企业注销需要商务局备案吗
  • 报销车费怎么贴
  • 非流动负债怎么巧记
  • 调出进程管理器
  • 如何做会计分录
  • rapapp.exe - rapapp是什么进程 有何作用
  • 电脑文件删除怎么恢复找回
  • encore是什么软件
  • 若依框架讲解
  • 施伦贝格尔
  • 大沙丘上的日落图片
  • 政府补助财务处理流程
  • 最早的手机是哪一年
  • php操作mysql的特点
  • 移动端h5页面适配
  • uniapp 打开小程序
  • 退车船税分录
  • php一个文件搞定两个文件
  • iterator用法 移除对象
  • vue使用计算属性声明在什么配置项中
  • br命令怎么用
  • php返回上一级
  • 出口退税附加税的计税基础
  • 利息支出是利息费用嘛
  • 新事业单位会计制度下固定资产的核算
  • 物流辅助服务属于什么科目
  • 工业企业成本一般占收入的比例
  • 股东权益合计是净资产吗
  • 新成立公司如何报税
  • 注册公司时的注册资金认缴是什么意思
  • 可供出售金融资产新准则叫什么
  • 转出未交增值税借方余额表示什么
  • 购进商品用于销售
  • 融资租赁租金会计科目
  • 房地产企业收到政府土地补偿款如何入账
  • 车辆不在公司名下加油费可以进公司吗
  • 车辆购置税的税目有哪些
  • 新开公司没有领失业金
  • 怎么结转本月期间损益
  • 苹果mac双系统怎么删除
  • centos7 cp
  • win8系统怎么直接进入桌面
  • win10无法uefi
  • 360修复漏洞补丁一直下载
  • dns轮询是什么意思
  • windows自带视频
  • 怎么放大linux字体
  • opengl光照效果
  • scrollview怎么用
  • 常用正则表达式汇总
  • 从头开始绘制一幅画图片
  • nodejs客户端框架
  • vue框架写淘宝购物车
  • 学javascript的书
  • shell脚本的启动和关闭命令
  • javascript判断浏览器
  • Activity的生命周期和页面之间的传递
  • window运行怎么打开
  • 江苏4050社保补贴政策2024
  • 护肤品关税税率
  • 建筑工程施工企业资质
  • 国税系统打印不了发票怎么办
  • 钟楼在西安的哪里
  • 2o21年公租房
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设