CNode

Node调用shell命令,等待交互继续执行

问答
JjameBoy发布于11 年前最后回复7 年前8 回复8353 浏览0 收藏

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

查看回复

回复 (8)

L
leapon#1·11 年前

加 -y 就好了

J
jameBoy#2·11 年前
引用 leapon加 y 就好了

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

P
pangnate#3·11 年前

关注,这个也需要

R
reverland#4·11 年前

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

M
magicdawn#6·11 年前

设置 stdio: 'inherit'

J
jerryOnlyZRJ#7·7 年前
引用 magicdawn设置 stdio: 'inherit'

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

M
magicdawn#8·7 年前
参与回复
登录后即可参与回复。登录