¿Cuál es la diferencia entre cscript y wscript? ¿Cuál es mejor para realizar la automatización de Telnet y FTP en Windows?
En Windows, un ejecutable es una aplicación de consola o una aplicación de Windows (o una SFU o una aplicación nativa, pero eso no importa aquí).
El kernel comprueba una bandera en el ejecutable para determinar cuál.
Al comenzar a usar la CreateProcessfunción WinAPI, si se trata de una aplicación de consola, el kernel creará una ventana de consola para ella si el proceso principal no tiene una, y adjuntará los flujos STDIN, STDOUTy STDERRa la consola.
Si se trata de una aplicación de Windows, no se creará una consola y STDIN, STDOUTy STDERRse cerrará de forma predeterminada.
WSCRIPT.EXEy CSCRIPT.EXEson casi exactamente idénticos, excepto que uno está marcado como una aplicación de Windows y el otro está marcado como una aplicación de consola (¡Adivina en qué dirección!)
Entonces la respuesta es: si desea que su secuencia de comandos tenga una ventana de consola, use CSCRIPT.EXE. Si desea que NO tenga una ventana de consola, use WSCRIPT.EXE.
Esto también afecta a algunos comportamientos, como el comando WScript.Echo. En CSCRIPT.EXEesto, escribe una línea en la ventana de la consola. En WSCRIPT.EXEél se muestra un cuadro de mensaje.
Para su aplicación sugiero CSCRIPT.EXE. Creo que también deberías mirar PuTTY y PLink, y también deberías ver esto aquí: