windows系统无法使用spawn,报错!

windows系统无法使用spawn,报错!

代码如下:

http://img1.sycdn.imooc.com//climg/60b5d98c09f33ec304520131.jpg

http://img1.sycdn.imooc.com//climg/60b5d99a0995ec4306400195.jpg

不仅spawn无法使用,execFile方法,使用shell文件的模式也是不行的,所以这里是不是不支持

windows系统啊,对这里了解甚少,希望老师指点。谢谢​

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
扬_灵 2021-06-01 17:35:19

同学你好,windows是支持child_process的,这里的报错是因为spawn默认情况下并不会创建子shell来执行命令,如果需要传递参数的话,应该采用数组的方式传入 

 const child = cp.spawn('netstat',[' -aon’]);

你可以参考一下这篇文档。https://www.jb51.net/article/141698.htm 

  • const child = cp.spawn('npm.cmd',['install'])

    windows 下必须加 .cmd

    执行文件也必须是.cmd 文件,否则报错

    ​cp.execFile(path.resolve(__dirname,'test.cmd'),['-al'],function(err,stdout,stderr){
    console.log(err);
    console.log(stdout);
    console.log(stderr);
    })

    不知道关于 windows 这里的兼容问题 老师后边会不会讲到

    2021-07-09 16:27:13
  • 首感谢大佬,但是为什么加上.cmd就可以了啊?老师课上确实很多都是苹果系统的指令,在windows上就会报错,也没有说明解决犯法,学起来有点吃力,每次都要查好久

    2022-09-07 23:04:33
  • imoocGly 回复 起点丶 #3

    解决了我的问题,赞

    2024-01-29 21:38:58
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师