使用pythonsh在远程服务器上运行应用程序

2024-05-16 13:04:42 发布

您现在位置:Python中文网/ 问答频道 /正文

有没有可能执行驻留在远程windows机器上的应用程序?远程主机正在运行一个Cygwin SSH服务器,我在我的笔记本电脑上运行下面的python脚本。“xt”应用程序-ocd.exe“在指定的路径”c/Program Files(x86)/Tensica/Xtensa OCD Daemon 9.0.3中”

ssh.connect('135.24.200.100',username = 'cyg_server',password = 'force')
stdin,stdout,stderr = ssh.exec_command("cd '/cygdrive/c/Program Files     (x86)/Tensilica/Xtensa OCD Daemon 9.0.3';./xt-ocd.exe")

上面的脚本无法工作。我不确定我是否走在正确的轨道上。请帮忙。在


Tags: 脚本机器应用程序远程windowsfilesprogramexe
3条回答

我相信问题出在你使用的cd上,它不是一个命令而是一个shell函数,而且你没有shell。尝试这样执行:

ssh.exec_command('/cygdrive/c/Program Files (x86)/Tensilica/Xtensa OCD Daemon 9.0.3/xt-ocd.exe')

"cd '/cygdrive/c/Program Files (x86)/Tensilica/Xtensa OCD Daemon 9.0.3';./xt-ocd.exe"实际上并不代表一个单独的命令,而是两个不同的命令(cdxt-ocd)。这必须由一个外壳来解释。

如果工作目录无关紧要,您可以尝试使用Iskren建议的可执行文件的完整路径。但如果确实需要设置工作目录,可以尝试:

stdin,stdout,stderr = ssh.exec_command("bash -c \"cd '/cygdrive/c/Program Files (x86)/Tensilica/Xtensa OCD Daemon 9.0.3';./xt-ocd.exe\"")

您也可以尝试使用完整路径来启动程序,而不是更改工作目录,然后再启动它。

相关问题 更多 >