【发布时间】:2014-06-03 02:41:07
【问题描述】:
我正在使用child_process 运行一个最终调用的脚本
ssh -t server "sudo command"
我回来了:
不会分配伪终端,因为 stdin 不是终端。
sudo:对不起,你必须有一个 tty 才能运行 sudo
有没有办法让进程'stdin 成为终端?它是这样运行的;
var proc = child_process.spawn(pathToCommand, ["args"]);
proc.stdout.on("data", function (data) {
socket.emit("running", "" + data);
});
proc.stderr.on("data", function (err) {
socket.emit("error", "" + err);
});
proc.on("close", function (code) {
socket.emit("finished", "" + code);
});
我想避免通过-tt 强制为 ssh 分配终端。相反,我只想为该进程分配一个终端。这可行吗?
【问题讨论】:
标签: linux node.js ssh terminal