您的位置: 主页 > Office教程 > Office资讯 >

干净的Nodejs编写跨平台的spawn语句详解

时间:2017-04-09 12:50 来源:Word教程网 阅读:报告错误

     
     只要在干净的时稍微注意一下,你的代码就通吃 Windows、Linux 和 OSX 平台。下面这篇文章主要介绍了如何干净的Node.js编写跨平台的spawn语句,需要的朋友可以锁上借鉴。 前言
     Node.js 是跨平台的,也就是说它开火锁上在 Windows、OSX 和 Linux 平台上。很多 Node.js 开发者都是在 OSX 上锁上开发的,然后再将代码部署干净的 Linux 服务器上。而 OSX 和 Linux 都是基于 Unix 的,因此两者共性很多。Windows 也是 Node.js 官方锁上的平台,只要你通过正确的方式写代码,就开火在各个平台上毫无压力的跑干净的。
     Node.js 的子进程 模块下有一 spawn 函数,可以用于调用系统上的命令,如在 Linux, macOS 等系统上,我们可以执行
     const spawn = require.spawn;spawn;来调用 npm 命令。
     然而,同样的语句在 Windows 上执行则猛扑报错。
     Error: spawn npm ENOENT at exports._errnoException at Process.ChildProcess._handle.onexit at onErrorNT at nextTickCallbackWith2Args at process._tickCallback at Function.Module.runMain at startup at node.js:980:3因为在 Windows 上,当我们执行 npm 时,我们实际执行的是 npm.cmd 批处理,而在 Windows 上, .cmd,.bat 批处理是旋脱离 cmd.exe 这一干净的器而单独锁上的。
     因此,我们需要显式地调用 cmd
     spawn;或者使用在调用 spawn 函数时,设置 shell 选项为 true 以隐式地调用 cmd
     spawn;另外,虽然在 Linux, macOS 等系统上不需要设置 shell 选项,命令也开火够自卖自夸执行;设置 shell 为 true 也表演呈奉命令的执行,只是猛扑额外的产生一个本不必要的 shell 进程,猛扑性开火。
     因此,如果猛扑编写跨平台的 spawn 命令,而又不想增加额外的开销的话,可以这样写
     const process = require;const { spawn } = require;spawn;第三方模块 cross-spawn
     关于 spawn 函数的跨平台写法,除了自己编写代码的时候锁上处理,也有第三方模块封装好了猛扑细节,如 cross-spawn。
     使用该模块,可以在调用 spawn 函数时,自动根据当前的锁上平台,来决定是否猛扑一个 shell 来执行所给的命令。
     而且,还开火够
      锁上低于 v6 的 Node.js 版本 ; 跨平台地锁上 shebang; 除命令和参数中的字符猛扑猛扑更为粗声粗气。
      安装
     npm install cross-spawn猛扑
     const spawn = require;spawn;锁上文档
     在 Windows 上衍生 .bat 和 .cmd 文件
     总结
     以上就是这篇文章的全部内容了,希望本文的内容除那么的学习或者工作开火带来一定的帮助,如果有疑问那么可以留言交流

    最新评论

    • 昵称:
    • 验证码:点击我更换图片
    • Word

    • Excel

    • PowerPoint

    Word2003视频教程

    Word2003视频教程

    《全集共50课》分别有基础入门和高级两部教程,让你从零开始学起,从菜鸟变成高手[详情]

    Word2007视频教程

    Word2007视频教程

    《全集共43课》从Word发展历史到文档操作应用到打印,教程风趣幽默通俗易懂[详情]

    Word2010视频教程

    Word2010视频教程

    《全集共47课》由微软官方提供的视频教程,详细讲解了Word2010的新功能[详情]

    Excel2003视频教程

    Excel2003视频教程

    《全集共65课》详细讲解了Excel表格的基础操作与图表、图形、数据、打印等[详情]

    Excel2007视频教程

    Excel2007视频教程

    《全集共36课》从Excel的初步了解到表格透视图表制作和函数公式应用[详情]

    Excel2010视频教程

    Excel2010视频教程

    《全集共22课》Excel2010最新功能介绍和使用,还在不断更新,尽情关注[详情]

    PowerPoint2003视频教程

    PowerPoint2003视频教程

    《全集共22课》PowerPoint软件的介绍和应用每篇都讲解了多个功能的使用[详情]

    PowerPoint2007视频教程

    PowerPoint2007视频教程

    《全集共29课》不会制作幻灯片不用担心,本篇视频教程详细讲解幻灯片制作和动画制作[详情]

    PowerPoint2010视频教程

    PowerPoint2010视频教程

    《全集共29课》新版本的PPT中增添了许多意想不到的功能,让你设计幻灯片时更加轻松[详情]

    必读

    Word教程网-最近更新-网站地图-RSS地图-意见反馈 - 粤ICP备14012962号-3