Expect是Unix系统中用来进行自动化控制和测试的软件工具,由Don Libes制作,作为Tcl脚本语言的一个扩展,应用在交互式软件中如telnet,ftp,Passwd,fsck,rlogin,tip,ssh等等。该工具利用Unix伪终端包装其子进程,允许任意程序通过终端接入进行自动化控制;也可利用Tk工具,将交互程序包装在X11的图形用户界面中。

以下是一个telnet自动登录的小脚本

#!/usr/bin/expect --

  # 向远程服务器请求打开一个telnet会话,并等待服务器询问用户名
  spawn telnet 127.0.0.1
  expect "username:" 
  # 输入用户名,并等待服务器询问密码
  send "admin/r"
  expect "Password:" 
  # 输入密码,并等待键入需要运行的命令
  send "admin/r"
  expect "%" 
  # 输入预先定好的密码,等待运行结果
  send "create vlan test/r"
  expect "%" 
  # 将运行结果存入到变量中,显示出来或者写到磁盘中
  set results $expect_out(buffer) 
  # 退出telnet会话,等待服务器的退出提示EOF
  send "exit/r"
  expect eof

利用expect, 可以方便的完成ftp,telnet, passwd等自动操作. 也可以进行一系列自动化测试! :)

参考:

  • Expect on SourceForge (current)
  • Official homepage (very outdated!)
  • The Tcler's Wiki -- Expect page
  • Perl Expect.pm module
  • Pexpect a Pure Python Expect-like module
  • Expect Scripting Tutorial
  • Empty - expectlike tool to run command-line interactive programs in UNIX shell-scripts
  • Expect-lite -- a wrapper for expect, making automation easy, quick, and fun
  • Bulletproof: Reliable CLI interface using Expect
  • ExpectJ - a Java implementation of the Unix expect utility

利用Expect实现telnet自动登录并执行command相关推荐

  1. shell脚本telnet自动登录并执行命令

    通过shell脚本实现telnet自动登录,并发送命令给telnet实现telent登录之后在远端执行对应的命令. #!/bin/shuser="admin" pass=" ...

  2. linux脚本expect自动登录,SHELL脚本:利用expect完成SSH自动登录

    有个业务需求,需要在服务器上安装一个Agent,安装Agent其实很简单,但是顶不住服务器数量太多,所以不可能一台台的登上去安装,所以写了个脚本可以实现批量自动化安装 1.脚本实现的功能 根据提供的I ...

  3. Linux执行命令提示Password,linux expect远程自动登录以及执行命令

    linux远程自动登录以及执行命令 远程登录 该自动登录的过程是通过shell里面expect实现的,类似相当于开了一个类似于cmd的命令段输出IP和密码. 注意该脚本能够执行的前提是安装了expec ...

  4. 利用phantomjs模拟QQ自动登录

    之前为了抓取兴趣部落里的数据,研究了下QQ自动登录. 当时搜索了一番,发现大部分方法都已经失效了,于是准备自己开搞. 第一个想到的就是参考网上已有方案的做法,梳理登陆js的实现,通过其他语言重写. 考 ...

  5. 利用Python实现校园网自动登录(部署在树莓派)

    利用Python实现校园网自动登录(部署在树莓派) 项目场景: 在实验室的时候,每天的第一个苦恼就是面对不自动弹窗的校园网登录,且一个账号仅支持两个设备. 实验室使用了路由器,多个设备使用同一个账号上 ...

  6. python自动登录qq空间_python 利用splinter组件,自动登录QQ空间

    1.需要下载splinter 2.下载chromedriver放在/usr/bin目录下 #!/usr/bin/env python import sys import time from splin ...

  7. 利用webBrowser来实现自动登录网站

    准备中... 转载于:https://www.cnblogs.com/Jessy/archive/2012/12/13/2816243.html

  8. 使用linux expect进行ssh和telnet自动化登录等操作

    Expect是一个用来处理交互的命令.借助Expect,我们可以将交互过程写在一个脚本上,使之自动化完成.形象的说,ssh登录,ftp登录,telnet登录等都符合交互的定义.下文我们首先提出一个问题 ...

  9. linux借助expect完成自动登录

    From: http://www.cnblogs.com/sunss/archive/2010/12/23/1914763.html 在工作中,我需要把远程服务器上的文件,拷贝到本地,可是scp的时候 ...

  10. windows桌面锁定后实现自动登录

    经过近三周的研究,终于实现了windows桌面锁定后的自动登录.可以说实现这个功能还是挺复杂的,用到的主要技术包括windows服务启动程序,桌面的自动化技术.还有管道通信等等 代码主要用到三个模块, ...

最新文章

  1. MySQL数据库limit分页、排序
  2. 小度智能音箱维修点_智能音箱哪个好?小度 小爱 天猫 评测
  3. Python title() 方法
  4. plsql如何执行单个语句_在单个try-with-resources语句中仔细指定多个资源
  5. Java PushbackReader ready()方法与示例
  6. OpenCV/CUDA/Qt 环境配置小结
  7. 作为 Web 开发人员我踩过哪些技术的坑?
  8. 人工智能的常用十种算法
  9. then是java关键字吗_then是java关键字吗
  10. 海岸鸿蒙质检质控样浓度一览表,环境标准样品数值对照表(质控样)
  11. Python单例模式的多种实现方式
  12. 微信趣味地区一键设置,安排
  13. 称重管理系统方案之车牌识别摄像机的应用
  14. Python和Numpy的加权抛硬币游戏的概率
  15. 高仿知乎android,Android高仿知乎首页Behavior
  16. 第四章 MCS-51单片机汇编语言程序设计
  17. 相机标定-opencv单应性矩阵实现平面坐标标定(kinect v1)
  18. 原型、交互及界面设计阶段的评审会
  19. 《点石成金》 思维导图
  20. android textview 显示表情和文字 表情带超链接

热门文章

  1. Luogu3810 三维偏序(陌上花开)
  2. 小程序学习笔记(5)-目录结构介绍
  3. html改变游戏速度变慢,游戏不顺畅,卡顿的显卡设置方法
  4. excel保存快捷键_这应该算是Windows电脑中最强的几组快捷键!
  5. python遍历json_Python学习笔记:Python3中Json数据遍历取指定值
  6. c++ opencv4.5.0 头文件_简单的C程序分析(first.c程序)
  7. python3下载url图片假死_利用Python 向FTP 上传图片,程序假死?
  8. 用python画分段函数图像_我想用Python matplotlib 画一个这样类似的图像,需要用到分段函数。大佬帮帮这个小弟?...
  9. asp.net+mysql,asp.net+mysql后台盲注入
  10. Mybatis的生命周期及作用域