一尘不染

帕拉米科和伪tty分配

python

我正在尝试使用Paramiko连接到远程主机并执行许多文本文件替换。

i, o, e = client.exec_command("perl -p -i -e 's/" + initial + "/" 
                              + replaced + "/g'" + conf);

其中一些命令需要作为sudo运行,从而导致:

sudo:对不起,您必须有一个tty才能运行sudo

我可以使用-t开关和ssh强制进行伪tty分配。

使用paramiko可以做同样的事情吗?


阅读 207

收藏
2020-12-20

共1个答案

一尘不染

我认为您想要对象的invoke_shell方法SSHClient(我想提供一个URL,但是lag.net上的paramiko文档非常繁琐,只是不会为我显示文档中给定位置的特定URL)-它为您提供了Channel,您可以在其上进行exec_command类似操作,但可以通过伪终端(带有终端类型以及行和列的数量!-完成)来实现,这似乎是您所要的。

2020-12-20