如何在没有SendKeys的情况下自动化Telnet会话

时间:2013-07-11 19:16:24

标签: windows batch-file scripting telnet

我想telnet到我的路由器,我想自动化它,所以我不必一直登录,因为我每天都会这样做几次。

除了VBS中的sendkeys之外还有其他方法吗?这是因为物理类型,因此telnet窗口需要处于活动状态,而且非常烦人。

我尝试了一个批处理文件,但结果确实很奇怪。这是:

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!

结果如下:

C:\Users\George\Desktop>telnet 192.168.1.254

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

为什么这样做?这将是我的预期结果......

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]=>

那么,为什么这样做呢?

我可以使用sendkeys以外的其他方法吗?

3 个答案:

答案 0 :(得分:6)

您可以谷歌搜索此工具:它不会编写Windows telnet.exe脚本,但它是一个可编写脚本的telnet客户端。

Telnet Scripting Tool v.1.0
作者:Albert Yale

答案 1 :(得分:1)

一种方法是使用一些windows版本的netcat.Here'a一个例子: http://net.tutscity.com/networking/automate-telnet-session-using-netcat/

答案 2 :(得分:1)

Telnet脚本编写工具( TST10 )虽旧但效率很高, 这是一个现代的替代品,有一个很好的GUI AutoTelnet.