我试图运行一个python脚本,它将连接到SSH并继续在该服务器上执行代码。我可以用我的第一线连接到服务器:通过SSH运行python脚本
cmd = 'ssh [email protected]'
os.system(cmd)
但下面会等到我从SSH断开执行任何代码。我如何继续在一个脚本中执行代码?
理想情况下,我将连接到SSH服务器创建几个文件,并将它们复制到我的计算机上,以便在同一个脚本中对它们进行操作。
我试过Paramiko有没有办法呢?谢谢。
我试图运行一个python脚本,它将连接到SSH并继续在该服务器上执行代码。我可以用我的第一线连接到服务器:通过SSH运行python脚本
cmd = 'ssh [email protected]'
os.system(cmd)
但下面会等到我从SSH断开执行任何代码。我如何继续在一个脚本中执行代码?
理想情况下,我将连接到SSH服务器创建几个文件,并将它们复制到我的计算机上,以便在同一个脚本中对它们进行操作。
我试过Paramiko有没有办法呢?谢谢。
将脚本传输到远程bash。
cat script.sh | ssh user @ server/bin/bash
正如其他人所评论的,使用Fabric。它为ssh
提供了远程控制的高级接口,并且他们已经完成了管理认证,密钥,错误处理等所有艰难的工作。这比通过系统调用运行并自行管理它要容易得多。
更多细节:
的[自动化与Python的的paramiko ssh连接和执行程序]可能的复制(https://stackoverflow.com/questions/37086065/automate-ssh -python-paramiko) – e4c5
有一个更好的方法来做到这一点。使用paramiko,或者更好的是使用Fabric,这是一个建立在paramika之上的高级库。请参阅上面的链接回答更多 – e4c5
为什么你不想使用paramiko? +1面料 – pmuntima