expect脚本入门
2015-03-23 21:21
567 查看
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
我们通过 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
相关文章推荐
- WMI 脚本入门:第二部分 中文
- BeanShell快速入门---Java应用程序脚本引擎
- TCL/EXPECT自动化测试脚本实例七 --- 构造报文测试
- AJAX入门使用客户端脚本对UpdateProgress编程
- ASP.NET AJAX入门系列:使用客户端脚本对UpdateProgress编程
- CGI脚本入门学习资料
- Lua脚本语言入门
- ASP编程入门接触脚本程序
- ASP编程入门进阶(三):接触脚本程序
- WMI脚本编程入门 第一部分
- [转载]Shell脚本初学者的入门知识
- TCL/EXPECT自动化测试脚本实例四 --- 批命令执行
- TCL/EXPECT自动化测试脚本实例六 --- SNMP community长度测试
- ASP编程入门进阶(三):接触脚本程序
- WMI脚本编程入门 第三部分
- WMI 脚本入门
- ASP编程入门进阶(三):接触脚本程序
- javascript入门·脚本执行的时间的四种类型(赠送一个转换的小例题)
- 从入门示例看ns2脚本的基本结构
- Unix/Linux Shell脚本入门实例[00原创]