¿Se puede programar el cliente telnet de Windows?

¿Se puede programar el cliente telnet de Windows?

¿Es posible utilizar el cliente Telnet de Windows para ejecutar una serie de comandos en un script?

Si no, ¿hay alguna alternativa que pueda ser?

Respuesta1

Hace mucho tiempo escribí un servidor COM que me permitiera hacer telnet desde VBScript. Si desea una copia (incluida la fuente), estaré encantado de publicarla en algún lugar de Internet. Lo uso para reiniciar enrutadores de forma remota.

Para darle una idea de lo que hace, aquí hay un script de ejemplo (sin verificación de errores)

const SVR = "www.microsoft.com"
dim telnet, s, i

set telnet = CreateObject("Rhs.Telnet")
telnet.Startup()

telnet.Connect SVR, 80
telnet.Writeline "GET / HTTP/1.0"
telnet.Writeline "Host: www.microsoft.com"
telnet.Writeline "User-Agent: RhsTelnet"
telnet.Writeline "Accept: */*"
telnet.Writeline ""

do while telnet.Readline(s, 1000)
  wscript.echo s
loop

telnet.Disconnect()
telnet.Cleanup()

J.R.

Enlace al servidor COM: hola, Lachlan, pruebahttp://www.ratsauce.co.uk/RouterCheck.zip

Este es el servidor COM y un script para reiniciar un enrutador Draytek. El script RouterCheck.wsf comprueba si puede hacer ping a un par de hosts de prueba, por lo que probablemente querrás ignorar la mayor parte del código. Simplemente use la función RebootRouter e ignore el resto. Esto está al final de mi línea ADSL por lo que la descarga puede ser un poco lenta.

Si alguien quiere la fuente (Visual C++ 5.0 con ATL), puedo colocarla en SourceForge.

Respuesta2

Sí. Mira estohilo.

Respuesta3

Puede instalar Perl y utilizar Net::Telnet, que le permite enviar e interpretar los datos recibidos.

ActivePerl es probablemente la forma más rápida de empezar a utilizar esto:

http://www.activestate.com/activeperl/

Y Net::Telnet está documentado aquí:

http://search.cpan.org/~jrogers/Net-Telnet-3.03/lib/Net/Telnet.pm

Más preguntas sobre cómo codificar usando Net::Telnet probablemente pertenezcan a StackOverflow. Quizás también quieras consultar www.perlmonks.org para obtener ejemplos y consejos.

Respuesta4

Si no le importa una solución comercial, existe un cliente de telnet empresarial llamadoTeSSH, que tiene un rico lenguaje de secuencias de comandos y se puede ejecutar desde la línea de comandos. Tiene soporte para escribir scripts en vbs, perl y lua. Es bastante económico: $34,95. También puedes visitar elForos de soporte de TeSSH.

información relacionada