如何在linux中远程执行Windows程序?

时间:2015-05-06 06:54:16

标签: python linux windows ssh cygwin

我尝试使用链接http://www.howtogeek.com/howto/41560/how-to-get-ssh-command-line-access-to-windows-7-using-cygwin/从linux访问Windows机器shell。它对我有用。虽然使用这个我能够ls或dir windows目录。但我无法执行python可执行文件。它显示以下错误。

$ C:\\Python27\\python.exe
-bash: C:\Python27\python.exe: command not found

现在我在回复后发生了一些新的错误。我已经提到了下面的整个场景。

Sanjayb@MA-SANJAYB-PC /cygdrive/d
$ /cygdrive/c/Python27/python.exe ./scripts/Python_Scripts/avro_demo.py
 Usage : ./scripts/Python_Scripts/avro_demo.py <data_file>

Sanjayb@MA-SANJAYB-PC /cygdrive/d
$ cd ..

Sanjayb@MA-SANJAYB-PC /cygdrive
$ /cygdrive/c/Python27/python.exe ./d/scripts/Python_Scripts/avro_demo.py
Error: Current working directory is a virtual Cygwin directory which does
not exist for a native Windows application.
Can't start native Windows application from here.

-bash: /cygdrive/c/Python27/python.exe: Not a directory

Sanjayb@MA-SANJAYB-PC /cygdrive
$ cd ..

Sanjayb@MA-SANJAYB-PC /
$ /cygdrive/c/Python27/python.exe ./cygdrive/d/scripts/Python_Scripts/avro_demo.py
C:\Python27\python.exe: can't open file './cygdrive/d/scripts/Python_Scripts/avro_demo.py': [Errno 2] No such file or directory

我该如何解决这个问题。我是否应跳过此部分,而是专注于此任务的客户端 - 服务器套接字编程。请尽快告诉我。

我也试过freeSSHd设置,如果我使用密码验证它连接并给我Windows shell。但我需要无密码登录。如何设置完成此操作。当从linux shell连接时,它说

Permission denied (publickey).

任何帮助表示感谢。

1 个答案:

答案 0 :(得分:1)

感谢您的回复。 终于得到了答案。

首先在windows下安装cygwin,然后按照How to get ssh command-line access to windows 7 using cygwin中提到的类似步骤操作。 然后远程执行Windows程序,请遵循以下几点。

  1. 要执行的第一个参数(即可执行文件或脚本)应指定为cygwin路径

    <强> /cygdrive/c/python27/python.exe

  2. 要指定为普通窗口路径的其他参数

    <强> d:\脚本\ Python_Scripts \ list_directory.py d:\脚本\ Python_Scripts

  3. 实施例

    /cygdrive/c/Python27/python.exe D:\\Scripts\\Python_Scripts\\list_directory.py D:\\Scripts\\Python_Scripts
    

    它的工作非常好。