【发布时间】:2020-06-30 00:02:07
【问题描述】:
我已经使用 python pexpect.spawn() 命令创建了一个 SSH 隧道。我想在处理后关闭或终止此 ssh 连接。我试过给<sshtunnel>.close() / <sshtunnel>.kill() / <sshtunnel>.terminate() 命令。即使在给出<sshtunnel>.isalive() 方法时我得到一个值False 表示子进程已关闭,但我仍然看到ssh 隧道进程在我的linux ubuntu 机器上运行。
关于如何终止这个 ssh 隧道进程的任何输入? 这是简短的代码sn-p。
username="username"
passwd="password"
try:
child=pexpect.spawn("ssh -C2qTnNf -D XXXX xxxx@qualifier1.qualifier2.net")
i=child.expect('password:')
print(i)
if i==0:
print(passwd)
time.sleep (0.5)
child.sendline(passwd)
child.expect('$')
time.sleep(2)
print(child)
print(child.isalive())
print('####')
child.close(force=True)
#child.terminate(force=True)
time.sleep(5)
print(child.isalive())
print(child)
except Exception as e:
print(str(e))
【问题讨论】:
-
是的 pynexj,确实如此。谢谢一堆。抱歉回复晚了