Perl实现的Expect的telnet应用

一段简单的perl实现的telnet脚本,目的是打印当前的系统环境变量




深入Perl的expect,详见如下的链接
http://www.php-oa.com/2009/09/16/perl-expect.html


expect的perl实现详见如下的链接和说明
http://blog.chinaunix.net/u3/98375/showart_1968735.html
http://www.cnblogs.com/morebetter/archive/2007/04/18/718250.html

spawn($command,@params),Forks and execs $command. Returns an Expect object upon success or undef if the fork was unsuccessful or the command could not be found. spawn() passes its parameters unchanged to Perls exec(), so look there for detailed semantics。起了一个新进程用来执行$command命令

new expect()->expect($timeout,$content),Given $timeout in seconds Expect will wait for $object's handle to produce one of the match_patterns, which are matched exactly by default. If you want a regexp match, prefix the pattern with '-re'.在$timeout内,期待出现包含$content的内容,默认是精确匹配,也可以使用正则表达式,expect($timeout,re=>'')

new expect()->send($string):Sends the given strings to the spawned command. 发送消息

new expect()->debug(0|1|2): 打印debug 信息,不同的数字表示不同的bug级别

new expect()->interact(),和用户进行交互,把控制权转交给用户

new expect()->soft_close(), 软关闭,直到$timeout时间到达,才关掉该进程

new expect()->hard_close(),硬关闭,立刻关闭该进程

new expect()->match(),returns the string matched by the last expect() call, undef if no string was matched.返回匹配的结果

new expect()->match_number(),exp_match_number() returns the number of the pattern matched by the last expect() call. Keep in mind that the first pattern in a list of patterns is 1, not 0. Returns undef if no pattern was matched.返回匹配的个数


例子:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值