expect脚本入门

来源:互联网 发布:华润五丰待遇知乎 编辑:程序博客网 时间:2024/05/01 16:16

Expect-----能与交互式程序进行“可程序化”会话的脚本语言

们通过 Shell 可以实现简单的控制流功能,如:循环、判断等。但是对于需要交互的场合则必须通过人工来干预,有时候我们可能会需要实现和交互程序如 telnet 服务器等进行交互的功能。而 Expect 就使用来实现这种功能的工具。Expect 需要Tcl编程语言的支持,要在系统上运行Expect须首先安装 Tcl。
用法:

Expect通过读取cmdfile(命令文件)来执行一系列指令。只要系统支持“#!“,在Script脚本文件的首行标明“#!/usr/local/bin/expect –f“,并赋予脚本文件可执行权限chmod +x xxxx,执行脚本文件就可以(隐含方式或是默认)调用Expect。 当然,上面的路径必须正确地指明Expect解释程序的位置。/usr/local/bin只是一个例子.

例子:

  #!/usr/bin/expect
  spawn spike -d pk a.out
  #exp_internal 1      
  #打开调试模式,0为关闭
  expect ":"
  send "\r"
  set pc 2020               #设置断点pc值为
  expect {
          -re "$pc" {send "q\r"}     #断点位置,退出
          -re "0x0{12}(?!$pc)" {send "\r";exp_continue} #否则继续匹配
  }

  interact



0 0