如何使用ssh执行远程脚本

时间:2015-01-27 02:26:45

标签: python linux bash ssh

我知道我可以找到这个问题的多个答案,但我对结果有疑问。

我有一台带有脚本的Windows PC和一台必须使用ssh启动脚本的Linux PC。

我看到的问题是,由于某种原因,它使用Linux环境来运行脚本而不是Windows环境。这是预期的,如果是,我如何启动远程脚本(从Linux)并仍然使用Windows环境?

Linux:Python 2.7
Windows:Python 3.4
我的例子:
我正在运行:ssh user@host "WINDOWS_PYTHON_PATH Script.py arg1 arg2 arg3"并且它在复制命令的内部失败 我无法运行ssh user@host "Script.py arg1 arg2 arg3",因为由于python版本,它将无法运行脚本。

我在Windows中运行命令的方式是使用相同的语法"Script.py arg1 arg2 arg3",它可以正常工作。

看起来它使用Linux env来运行脚本。我想在Windows上运行脚本,无论是谁触发它。我怎样才能做到这一点?

2 个答案:

答案 0 :(得分:0)

scp user@host:/PATH_YOUR_SCRIPT/Script.py Script.py;Script.py arg1 arg2 arg3

答案 1 :(得分:0)

我的问题的解决方案是在脚本调用前使用PATH=/cygdrive/c/WINDOWS/system32:/bin cmd /c,例如:ssh user@host "PATH=/cygdrive/c/WINDOWS/system32:/bin cmd /c script"。这将在Windows环境中运行脚本。

在我的情况下,问题是该脚本是在cygwin env下运行的,我希望在Windows环境中运行。