2013-07-11 26 views
5

Desidero telnet nel mio router e desidero automatizzarlo in modo da non dover effettuare il login tutto il tempo, poiché lo faccio più volte al giorno.Come automatizzare una sessione Telnet senza SendKeys

Esiste un altro metodo oltre ai sendkeys in VBS? Questo perché fisicamente digita, quindi la finestra di telnet deve essere attiva, con piuttosto fastidiosa.

Ho provato un file batch, ma sto ottenendo risultati davvero strani. Eccolo:

telnet 192.168.1.254 
REM This is the router IP 
ping 255.255.255.255 -n 1 -w 1000 > nul 
REM This is to wait for the router if its being slow 
George 
REM This is the username, as it prompts as soon as it logs in 
ping 255.255.255.255 -n 1 -w 1000 > nul 
(the password) 
ping 255.255.255.255 -n 1 -w 1000 > nul 
system 
REM Enters the system menu 
ping 255.255.255.255 -n 1 -w 10 > nul 
debug 
REM Enters the Debug menu 
ping 255.255.255.255 -n 1 -w 100 > nul 
:s 
cpu 
REM This lets me see the CPU usage 
ping 255.255.255.255 -n 1 -w 1000 > nul 
REM Wait while it lists it 
mem 
REM Checks the memory 
ping 255.255.255.255 -n 1 -w 1000 > nul 
REM Waits again! 
goto s 
REM I need a loop otherwise I would have to type out lots of code! 

Ecco i risultati:

C:\Users\George\Desktop>telnet 192.168.1.254 

C:\Users\George\Desktop>telnet 192.168.1.254 
^C Terminate batch job (Y/N)? 

Perché si fa questo? Questo sarebbe il mio risultato atteso ...

Username : George 
Password : ******* 
------------------------------------------------------------------------ 

          ______ Technicolor TG582n 
         ___/_____/\ 
         /  /\\ 8.C.M.0.AR 
        _____/__  /\\ 
       _/  /\_____/___ \ Copyright (c) 1999-2012, Technicolor 
       //  /\  /\ \ 
     _______//_______/ \ /_\/______ 
    / /\  \ ///  /\ 
    __/ / \  \///  /_\__ 
// / \_______\/ //  // /\ 
/_/______/___________________/ /________/ /___/ \ 
\ \  \ ___________ \ \  \ \ \/
    \_\  \/  /\ \ \  \ \___\/ 
    \  \/  /\ \ \  \/
     \_____/  / \ \ \________\/ 
      /__________/  \ \/
      \ _____ \  /_____\/ 
      \/ /\ \ /___\/ 
      /____/ \ \/
      \ \ /___\/ 
       \____\/ 

------------------------------------------------------------------------ 
{George}=>system 
{George}=>debug 
{George}[system debug]=>cpu 
CPU (%): Idle  User  Kernel 
      57.43  0.99 41.58 
{George}[system debug]=>mem 
Total:     61280 KB 
Used:      45216 KB 
    by kernel:    30748 KB 
    by applications:  14468 KB 
{George}[system debug]=> 

Quindi, perché sta facendo questo?

Posso utilizzare un altro metodo oltre ai tasti di invio?

+0

ci si aspetta che un 'ping 255.255.255.255 -n 1 w 1000> nul' viene eseguito dal cmd.exe, ma' george' deve essere inviato al client telnet ? In che modo cmd.exe dovrebbe sapere cosa ti aspetti? – jeb

+0

Oh - Stavo usando il ping per creare un ritardo, poiché ci vuole un po 'di tempo per connettersi. È per questo che ho un ciclo infinito? – George

risposta

5

È possibile google per questo strumento: esso non Windows Script Telnet.exe ma è un telnet script cliente.

Telnet Scripting Tool v.1.0
da Albert Yale

+1

Grazie - Ho trovato [qui] (http://support.moonpoint.com/downloads/windows/network/Telnet/tst10.php) come openDNS ha restituito un errore con il link che hai dato – George