Node调用shell命令,等待交互继续执行
发布于 4 年前 作者 jameBoy 5187 次浏览 最后一次编辑是 3 年前 来自 问答

场景是这样的,在ubuntu14.04下使用sudo apt-get install xxx时,需要用户确认是否安装,这个在终端shell里非常好执行,但是我在node里使用child_process的exec调用apt-get时候,就会发现输出回调函数一直在等待,所以我想那我用spwan方法对输出进行监听,然后实时将输出打印出来应该就行吧,但是按照这种方法会出现一个问题是将实时的输出打印出来了,但是在输入确认是否安装 的Y/N确认时无效了,我想了一下这个应该是没有监听输入吧,但是我该怎么处理输入呢?监听输入的时候完成后是将输入怎么传给调用的子进程呢?

8 回复

加 -y 就好了

@leapon ok了,果然是这样,但是我想知道类似这样的,我调用一些外部的shell命令,可是需要有时在终端输入一些参数什么的,我该怎么处理?该怎么监听呢?

关注,这个也需要

你有没考虑pty.js这种 自豪地采用 CNodeJS ionic

@jameBoy 这个是命令自带的参数。unix 命令还可以用pipe导入输入。

设置 stdio: ‘inherit’

@magicdawn 感谢,完美解决了问题

回到顶部