我知道我可以找到这个问题的多个答案,但我对结果有疑问。
我有一台带有脚本的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上运行脚本,无论是谁触发它。我怎样才能做到这一点?
答案 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环境中运行。