我在Python中运行ssh而不使用像Paramiko这样的外部库.我有理由这样做,而不是通过外部库.
基本上我在做subprocess.Popen(“ssh -t bla – command”)
这样做时我收到以下消息:
Pseudo-terminal will not be allocated because stdin is not a terminal.
我用-t运行它的原因是我希望远程命令在我杀死我的python脚本时终止.
当我尝试使用-t -t(强制它)时,我收到以下消息:
tcgetattr: Inappropriate ioctl for device
有没有办法用-t通过Python运行我的ssh命令?
解决方法:
我可以恭敬地建议您提出错误的问题,并且正确的问题可能类似于“如何在我的python程序终止时确保子进程终止”
你可以做一些聪明的unix东西,比如分配一个pty,并确保你的子进程使用它作为std in out等,这样ssh命令认为它正在与终端而不是管道通话,但这可能不是你的真的很想做.