首页 > 解决方案 > 带有子进程的 Paramiko

问题描述

我想在远程服务器上运行一个程序,并使用 subprocess 和 Paramiko 从我的计算机向它发送命令。下面有用吗?

ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect('host', username='user', password="password")
myprogramme = subprocess.Popen("myprogramme.exe", stdin=subprocess.PIPE)
myprogramme.stdin.write(ssh_stdout.read())
myprogramme.communicate("some_inputs\n")
myprogramme.kill

标签: pythonsshsubprocessparamiko

解决方案


您不能通过 SSH 在远程服务器上运行程序subprocess

用于SSHClient.exec_command执行您的命令。

然后,您可以使用返回的命令将命令提供给进程stdin
使用 Python Paramiko 通过 SSH 将输入/变量传递给命令/脚本


推荐阅读