注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

星期五

明天不上班

 
 
 

日志

 
 
关于我

一个特立独行的Java程序员,比较宅,上上网,写博客,听音乐,看电影。

网易考拉推荐

2011年9月9日  

2010-10-16 18:26:11|  分类: 默认分类 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

expect

最初接触expect是在从自己的机器自动登陆到美国服务器上拷贝程序回来,来回之间免去了输入密码和一些scp的命令。
在自动化脚本中,expect更是显示了其强大的优势,为脚本中弥补了一些缺乏交互的弱点。

expect的官网上介绍了expect的一些应用场合,个人觉得如果只要是脚本中中有交互而没有什么好办法时就可以考虑expect.

就我所关心的几点谈下:
1. 如何使用expect完成交互功能
a. 参数的传递
set password [lindex $argv 1] ==> password=123
./exp1.exp bob 123
b. 发送命令
send "cmd\r"
c. 命令的交互
expect "response\r"
d. 结尾方式
expect eof
interact
e. 表达式
if/esle while for
if {} else {}
while {} {}
for {} {} {} {}
< > <= == !

2. 如何与C交互
#include "expect.h"

exp_timeout = -1;
exp_expectl(exp_spawnv(*argv,argv),exp_end);

3. 更多参考实例:
http://expect.nist.gov/example/README

http://expect.nist.gov

个人感觉,autoexpect超级不好用,也许是自己使用不当吧,对于简单的应用,自己写expect中的语句,还是简单实用些。

  评论这张
 
阅读(97)| 评论(0)
推荐

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017