您如何在Paramiko中的单个会话中执行多个命令?(python)

您如何在Paramiko中的单个会话中执行多个命令?(python),第1张

您如何在Paramiko中的单个会话中执行多个命令?(python)

非交互式用例

这是一个 非交互式 示例……它发送

cd tmp
ls
然后发送
exit

import syssys.stderr = open('/dev/null')       # Silence silly warnings from paramikoimport paramiko as pmsys.stderr = sys.__stderr__import osclass AllowAllKeys(pm.MissingHostKeyPolicy):    def missing_host_key(self, client, hostname, key):        returnHOST = '127.0.0.1'USER = ''PASSWORD = ''client = pm.SSHClient()client.load_system_host_keys()client.load_host_keys(os.path.expanduser('~/.ssh/known_hosts'))client.set_missing_host_key_policy(AllowAllKeys())client.connect(HOST, username=USER, password=PASSWORD)channel = client.invoke_shell()stdin = channel.makefile('wb')stdout = channel.makefile('rb')stdin.write('''cd tmplsexit''')print stdout.read()stdout.close()stdin.close()client.close()

交互式用例
如果您有交互式用例,那么此答案将无济于事…我个人将使用

pexpect
exscript
用于交互式会话。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5643579.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存