2015-10-13 152 views
0

目前我通过我的linux终端运行我的python程序。我执行ssh后如何继续执行我的python脚本

在elif条件语句的一部分中,它执行linux ssh命令以远程访问另一台机器os.system('ssh ' + <varWithHostName>

当它进入另一台机器后,它似乎退出我的程序。在我的程序进入另一台机器后,如何继续执行下一部分程序。

我听到的Paramiko模块可能是答案?或者这可以在没有模块的情况下完成?

+0

显示你的整个程序上。 – RobertB

回答

0

如果你想用ssh在远程机器上执行脚本,你可以使用ssh运行脚本。例如

os.system('ssh ' + <varWithHostName> + ' foo.py') 

因为foo.py存在于计算机

http://www.cyberciti.biz/faq/unix-linux-execute-command-using-ssh/

+0

很酷,由于某种原因,它会将附加到varWithHostName的末尾,导致主机名不正确。错误输出= ssh:无法解析主机名rorodostuff.py:没有与主机名关联的地址。 roro = dostuff.py = kaz

+0

您可能需要检查该机器的目录中是否存在'foo.py';我其实不确定在那里出了什么问题,但是如果你在'foo.py'里面有ssh命令,我不确定你是否可以在'elif'语句中运行'foo.py'的其余部分,你可能会必须运行来自远程机器的'elif'语句中的任何内容 – ljk

相关问题