2008-10-26 12 views
6

Tengo una aplicación que se ejecuta solo en Windows y un archivo por lotes que la inicia. Quiero invocar este archivo por lotes desde Linux, lo que significa que algo así como Linux batch lanzará el lote de Windows con parámetros y esto a su vez ejecutará mi aplicación.Invocar el archivo por lotes de Windows desde Linux

¿Puedo hacer eso? ¿Cómo?

Respuesta

11

usted puede instalar un servidor ssh en el cuadro de ventanas (Cygwin tiene uno), y luego de Linux hacer algo como:

ssh [email protected] c:/path/to/batch.cmd 

y que debe iniciar su aplicación en el cuadro de las ventanas.

+0

Esto funcionó para mí, pero la ruta era relativa y seguía la sintaxis de linux, es decir 'ssh usuario @ windows-box/batch.bat' –

0

Nuestro proceso de compilación funciona actualmente de otra forma: un servidor de Windows inicia cosas en el servidor Linux utilizando plink (parte de PuTTY). Es posible que pueda configurar algo similar.

0

Esto puede causar un problema de seguridad. Nuestra persona de seguridad de la información no me permitió invocar ningún programa directamente.

La forma más segura es configurar el servidor en la computadora con Windows. Esto puede ser un servidor web, por ejemplo. Y luego invoque su proceso dentro de la secuencia de comandos de PHP/Perl/Python.

1

La manera más directa es probablemente instalar un servidor ssh en el recuadro de Windows. Cygwin incluye un servidor ssh.

Dependiendo de cuán precisas sean sus necesidades de tiempo, es posible que pueda tener un trabajo "at" en el cuadro de Windows que se ejecuta periódicamente (cada 5 minutos?) Y se ejecuta si ve que existe un archivo en particular, eliminando el archivo. Entonces podría usar Samba/smbclient para crear el archivo. Debería activar el intercambio de archivos en el cuadro de Windows para que esto funcione.

Si el cuadro de Windows tiene un servidor web, puede escribir un CGI y activarlo usando wget o cURL.

0

Consulte también winexe que le permite ejecutar comandos de Windows/scripts por lotes sin ejecutar el servidor ssh.

Cuestiones relacionadas