Python子进程-通过SSH运行多个Shell命令

Python子进程-通过SSH运行多个Shell命令,第1张

Python子进程-通过SSH运行多个Shell命令

基本上,如果您调用子进程,它将创建一个本地子进程而不是一个远程子进程,因此您应该与ssh进程进行交互。因此遵循以下原则:但是请注意,如果动态构建目录,则容易受到shell注入的影响,那么END行应该是唯一标识符。为避免END行问题的唯一性,最简单的方法是使用不同的ssh命令

from __future__ import print_function,unipre_literalsimport subprocesssshProcess = subprocess.Popen(['ssh',          <remote client>],         stdin=subprocess.PIPE,          stdout = subprocess.PIPE,         universal_newlines=True,         bufsize=0)sshProcess.stdin.write("ls .n")sshProcess.stdin.write("echo ENDn")sshProcess.stdin.write("uptimen")sshProcess.stdin.write("logoutn")sshProcess.stdin.close()for line in sshProcess.stdout:    if line == "ENDn":        break    print(line,end="")


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

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

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

发表评论

登录后才能评论

评论列表(0条)

保存