我今天一直在使用Paramiko来使用Python SSH连接,这很有用。
然而,我真的希望能够通过SSH做的一件事就是使用一些Pythonic糖。据我所知,我只能使用内置的Paramiko函数,如果我想在远程端使用Python,我需要使用我放在那里的脚本,然后调用它。
有没有办法可以通过SSH连接发送Python命令,而不是仅仅考虑Paramiko SSH连接的限制?由于我在Python脚本中通过Paramiko运行SSH连接,因此我觉得这样做是正确的,但我看不到这样做的方法。
答案 0 :(得分:1)
RPyC可能是您正在寻找的。它使您可以直接从本地脚本访问另一台机器的Python环境。
>>> import rpyc
>>> conn = rpyc.classic.connect("someremotehost.com")
>>> conn.modules.sys.path
['D:\\projects\\rpyc\\servers', 'd:\\projects', .....]
要通过SSL或SSH建立连接,请参阅:
答案 1 :(得分:0)
那就是SSH创建的 - 成为一个安全的shell,并且命令在远程计算机上执行(你可以把它想象成你自己坐在远程计算机上,而且要么没有意味着你可以在shell中执行Python命令,尽管你在物理上与机器交互。)
你不能发送Python命令只是因为Python没有命令,它执行Python脚本。
所以你可以做的一切都是“thing”,这会做出下一步:
scp
它到远程机器。基本上shell命令本身就是远程机器的程序,因此您可以将这些脚本视为shell扩展(带有命令行参数的python程序,例如)。