Pregunta

Necesito crear un archivo BAT para ejecutar una aplicación a través de telnet, pero que yo sepa no hay forma de hacerlo en DOS. Telnet no permite que se envíe ningún comando a la máquina remota en el mismo instante de la conexión, y cada comando posterior en el archivo BAT solo se ejecutará después de que se detenga Telnet. Este código hipotético ilustra lo que quiero hacer:

telnet 100.99.98.1 "C:\Application\app.exe -a -b -c"

Y eso ejecutaría el app.exe en la máquina 100.99.98.1 con tres parámetros. A pesar de mis esfuerzos, nada funcionó. ¿Hay alguna manera de hacer eso?

Tks,

Pedrin Batista

¿Fue útil?

Solución

pruebe espere probar

de la página web:

  

Expect es una herramienta para automatizar   aplicaciones interactivas como    telnet , ftp, passwd, fsck, rlogin,   propina, etc. Espera realmente hace esto   cosas triviales Esperar también es útil   para probar estas mismas aplicaciones.

Otros consejos

¿Has probado:

echo "c:\application\app.exe -a -b -c" | telnet 100.99.98.1

esto no funcionará si el servidor telnet remoto requiere un nombre de usuario y contraseña, sin embargo.

Debido a sus caminos, supongo que está trabajando en una plataforma de Windows. Sugeriría mirar PsExec de Microsoft / SysInternals que le permite ejecutar un comando en una máquina remota.

PsExec es parte del excelente servicio gratuito paquete PsTools de Mark Russinovich. SysInternals fue comprado recientemente por Microsoft, pero las herramientas siguen siendo gratuitas.

Sin embargo, esto no funciona a través de Internet. Utiliza el puerto de red de Windows 445 y solo debe usarse en redes locales. Si lo necesita, le sugiero que use SSH.

No es posible usar telnet de la manera que desee.

Podría proteger el shell (ssh), pero un servidor ssh debe ejecutarse en la máquina remota (100.99.98.1 en su caso).

EDITAR:

Consulte http://sshwindows.sourceforge.net/ para un cliente y servidor ssh (basado en cygwin) para Windows.

¿Has probado lo siguiente?

telnet 100.99.98.1 <someScript

Donde someScipt tiene su comando, por ejemplo, C: \ Application \ app.exe -a -b -c

¿Ha visto un demonio de Shell remoto para Windows? Esto es probablemente mucho mejor que telnet.

¿Es necesario que su aplicación de telnet se ejecute en una ventana de comandos, o solo necesita iniciarla desde la línea de comandos? Si desea " iniciar y olvidar " puede considerar un programa terminal programable como el TeraTerm gratuito. Puede iniciarlo desde la línea de comandos con el comando start y dejar que ejecute un script en segundo plano.

Puede considerar usar Cygwin (que proporciona un entorno de línea de comandos similar a Linux / Unix en ejecución en Windows) Se encuentra disponible una amplia gama de herramientas estándar, incluidas las secuencias de comandos de shell, como parte de Cygwin.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top