位置: 编程技术 - 正文

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

  • 增值税专用发票有效期是多长时间
  • 免税收入不征税收入有哪些
  • 个人所得税 补觉
  • 新公司什么时候开始建账
  • 股东转让股权公司如何做账
  • 换出交易性金融资产入账价值
  • 纳税申报的具体流程个体户
  • 辅导期一般纳税人什么意思
  • 个人户转账公户用途
  • 预交了一个季度的社保
  • 增值税专用发票开错了咋办
  • 互联网企业交什么保险
  • 一般纳税人企业要交哪些税
  • 餐饮业一般纳税人企业所得税税率
  • 非同一控制下企业合并的交易费用
  • 小微企业增值税减免账务处理
  • 企业净资产增长率上升说明什么
  • 利润总额就是会计准则吗
  • 苹果的mac系统
  • 国家税务条例
  • 其他债权投资发生减值会影响所有者权益总额吗
  • 公司借法人的钱超过一年
  • pvlsvr.exe - pvlsvr是什么进程 有什么用
  • 营改增后不动产发票
  • 高新技术企业职工总数
  • 系统win7旗舰版
  • 房产税会计科目有哪些
  • 土地增值税清算扣除项目
  • 增值税逾期未申报怎么补申报
  • 社保比例调整后多久生效
  • 顺流交易的会计处理
  • vue如何使用axios
  • c语音进阶
  • poi java 导入导出
  • 国外购买土地
  • 交易性金融资产的入账价值
  • 公司法人代表可以有几个
  • mysql数据查询慢
  • 固定资产特点有
  • 销售货物提供运输服务分录
  • 未计提坏账准备金额在哪个表
  • 开发票没有银行回单可以入帐吗?
  • 固定资产核算的内容主要包括
  • 扣除工程款说明
  • 为别人开发票先收的税金怎么入帐?
  • 间接费用的分配公式
  • 销售净利率的范围
  • 纳税申报准备什么材料
  • 私人贴现利息如何交税
  • 材料人工制造费用是什么成本
  • 采购自产自销的商品
  • 管理费用业务招待费包括哪些
  • 出纳账户怎么设置
  • mysql 基本操作
  • mysql中的rand函数
  • 容器内存限制
  • docker 自启动
  • popblock.exe
  • macbook备忘录字数统计
  • 电脑死机是什么问题
  • windows8的ie浏览器在哪
  • 怎么把win8界面换成win7
  • 工商网银登陆
  • win10系统无法打开设置
  • windows10预览
  • 浅谈jquery的应用
  • perl变量后拼接字符串
  • python计算两个数乘积代码
  • Linux命令行和shell脚本编程大全
  • python例题讲解
  • 有道词典下载安装
  • shell 批量删除
  • beautiful python
  • 如何在Android上使用cv库
  • 上海电子税务局怎么添加办税员
  • 年终奖发4万扣多少税
  • 在北京电子税务局怎么缴纳社保费
  • 劳务分包需要交什么税
  • 纳税服务存在的不足之处
  • 非中山户籍学生可以自己买医保吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设