【发布时间】:2021-02-15 15:12:43
【问题描述】:
我是 python 新手。我需要每天登录服务器(桌面 -> 1.32 -> 0.20 -> 3.26)。为此,我需要打开 putty 并使用我正在登录的 ssh 连接。为此,我想使用 python 编写一个脚本。
通过使用谷歌,我认为 subprocess.Popen 会做到这一点。但它不能正常工作。
第一个线索:
import subprocess
pid = subprocess.Popen("putty.exe user@xxx.xx.x.32 -pw password").pid
它工作正常(打开窗口登录到 .32)。但不能提供输入。我开始知道,要为相同的流程提供输入,我们需要使用管道。
第二步:
from subprocess import Popen, PIPE, STDOUT
p = Popen("putty.exe user@xxx.xx.x.32 -pw password", stdout=PIPE, stdin=PIPE, stderr=STDOUT)
grep_stdout = p.communicate(input=b'ssh xx.xx.x.20\n')[0]
print(grep_stdout.decode())
通过使用它,我也无法登录第一台服务器。登录到所有服务器后,我需要终端处于活动状态。这个怎么办???
编辑
我需要在新的腻子窗口中执行此操作。登录后不要关闭窗口。我有一些手工工作要做。
【问题讨论】:
标签: python python-2.7 ssh