我如何使用ssh作为后台任务在Linux机器上运行python脚本?

我必须在less数Linux机器和Windows机器之间编排一些脚本任务。 SSH工作正常的Linux机器起诉如下:

ssh mysuser@targetLinuxmachine "python '/pathtomyscript/myscript.py' &"

但是,当我将命令发送到Windows机器时,同样的方法不能用作后台任务。 在Windows机器上,我有ssh服务器运行和ssh连接本身工作。 RSA公钥已被插入。 其实下面的命令运行:

 ssh -n -f mysuer@targetwinmachine "python 'C:\Windowspath\myscript.py -someswitch parameter' &" 

然而,在bash中执行该命令将使我的terminal到Windows控制台,并不允许我运行它作为背景任务。 我猜“&”不能在windows上运行该命令作为后台任务。

如何在Windows机器上运行等效脚本作为后台任务?

是的, cygwin有一个非常好的Windows服务器。 首先你应该下载并安装这个。

使用命令行sshlogin到Windows机器后,可以使用ssh-keygen使其成为无密码和自动的。

第三件事是在你的windows机器上安装python,你可以从http://www.python.org/getit/windows/得到。

对于我来说,这个步骤中的哪一个不起作用,但可能你的主要问题是在你的Windows机器上安装ssh服务器。 你可以login到您的服务器与您的unix / Linux的命令行SSH? 如果没有,请升级您的问题,我会升级我的答案。

您可以从命令行使用Putty:

 plink mysuser@targetLinuxmachine "python '/pathtomyscript/myscript.py' &" 

SSH密钥可以通过PuttyAgent进行pipe理。

通过apache服务器的cgi脚本是在另一台机器上执行代码的好方法。

所以你只是想在Linux的后台运行命令? 我想你只是把错误的地方。 放在“”之外:

 ssh -n -f mysuer@targetwinmachine "python 'C:\Windowspath\myscript.py -someswitch parameter' " &