- 16
- 0
- 约3.13万字
- 约 24页
- 2016-12-03 发布于广东
- 举报
Expect手册中文版.doc
Expect 手册中文版
最近在搞一个ssh远程反向登陆的工具,就接触到expect工具,从网上找到了些expect资料。这篇文章是由gunman翻译man手册对expect的解释。
?
EXPECT(1)
名字:
Expect能与交互式程序进行“可程序化”会话的脚本语言
大纲:
(命令选项概述)
expect [ -dDinN ] [ -c cmds ] [ -[f|b] ] cmdfile ] [ args ]
概述:
Expect是一种能够按照脚本内容里面设定的方式与交互式程序进行“会话”的程序。根据脚本内容,Expect可以知道程序会提示或反馈什么内容以及什么是正确的应答。它是一种可以提供“分支和嵌套结构”来引导程序流程的解释型脚本语言。另外,还可以在随时需要的时候把控制权交给用户,然后再还给脚本。ExpectK是Expect和Tk的混合体。它就按照Expect和Tk的方式运行。Expect也可以直接嵌入到C或是C++程序中(这种情况是不涉及Tcl解释)。请看libexpect(3).Expect的名字是从被UUCP(UNIX到UNIX的拷贝),Kermit(一种文件传输协议, 由哥伦比亚大学设计)和一些其他Modem控制等程序设计思维大众化的“send/expect”时序理念中得出的。不像UUCP,Expect已经被广泛应用于很多你可以想像的到的程序和任务当中了。
Expect还能同时和多个程序交互。
例如:下面是一些Expect可以做到的事情
让你的计算机呼叫你,这样你可以不用付呼叫费。
启动一个游戏(例如:rogue),如果不是最佳配置,则一直重新启动,直到是最佳配置为止。然后把控制权转交给你。
运行fsck的时候,用”yes”或是”no”来回应fsck的交互问题。在没有预设答案标准的情况下把控制权返还给你。
连接到另一个网络或是BBS站点,自动收取你的邮件,就像邮件是发往你的当地系统一样。
在执行rlogin,telnet,tip,su,chgrp等等命令的时候保存“环境变量”,“当前目录”或是其他一些信息。
有很多原因致使Shell不能完成这样的任务(你自己可以试试看)。而这一切对于Expect
来说都是可以的。一般情况下,当一个程序需要程序与用户进行交互的时候就需要用到Expect。还需要的一个前提是这种交互必须能程序化(例如:循环结构,选择结构等等,个人认为必须是有规律可循的)。如果需要的话,Expect还能把控制权返还给用户。同样,用户也可以在任何时候把控制权还给脚本程序。
?
用法:
Expect通过读取cmdfile(命令文件)来执行一系列指令。只要系统支持“#!“,在Script脚本文件的首行标明“#!/usr/local/bin/expect –f“,并赋予脚本文件可执行权限,执行脚本文件就可以(隐含方式或是默认)调用Expect。
当然,上面的路径必须正确地指明Expect解释程序的位置。/usr/local/bin只是一个例子。
-c 选项用来标明需要在执行脚本内容之前来执行的命令。
这条命令(-c选项后的命令)应该用引号括起来,以免在执行时被shell分开解释。
-c选项可能会被反复使用。多条命令可以使用同一个”-c”,命令之间需要用分号隔开。这些命令会按照它们出现的先后顺序执行。(在Expectk中,”-c”相当于”-command”)。
-d 选项允许输出调试性信息。这些信息主要报告像expect和interact等命令执行时的内部行为。这个选项与写在脚本开头的”exp_internal 1”具有同样的效果,同时还会打印出Expect的版本。(strace命令用在跟踪变量声明,trace命令用于跟踪变量的赋值)(在Expectk中,”-d”相当于”-diag”)
- D选项开启交互调试器。后面必须跟有一个整数值作为参数,当值为非零或是按下CTRL+C的时候(或是遇到断点,或是在脚本中恰好出现其他的调试语句),调试器会在进行下一次Tcl Procedure前取得控制权。想了解更多信息请参见README文件或是下面的SEE ALSO。(在Expectk中,这个选项相当于”-Debug”)。
- f 选项指明从哪个文件中读取命令。这个选项是可选的,因为只有当使用”#!”时它才有可能被用到。而其他选项可以写在命令行中。(在Expectk中,它相当于”-file”)。
默认情况下,命令文件是全部读入内存一并执行的。但有些时候需要每次只读一行。例如:stdin(标准输入)就是这样读取的。如果强制任意文件以这种方式(每次读一行)执行的话就使用”-b”选项。(在Expectk中,它相当于”-buffer”)。
如果”-“被一个文件名替代,那么脚本就会用读指定文件的方式来替代从标准输入读的方式。(例
您可能关注的文档
- GMRunrate.doc
- INV04库存成本调整作业流程料工费合并.doc
- R3功能详解-生产管理四.doc
- SQLServervsOracle存储过程语法转换12.doc
- TermsandIdiomofShipping,Trading,CharteringandInsurance航运、贸易、租船和保险术语和惯用语A.doc
- USANA制度讲解手稿.doc
- 不动产权属证书的性质及借名购房.doc
- 个人购房抵押保证借款合同.doc
- 个人贷款真题2009年新.doc
- 中国M2GDP比率的长期走势.doc
- OBE欧贝结算管理用户手册.pdf
- Zhejiang电力行业规范说明书用户手册.pdf
- Wuhu Electronic Certification 用户手册说明书.pdf
- MLBioELISA试剂盒ml103656说明书用户手册.pdf
- Beijing政务公开服务手册无型号说明书用户手册.pdf
- ZJDB建筑工程合同说明书用户手册.pdf
- CitCorp竹懋科技车用电子料件CN 362744 CN 312861 CN 449005说明书用户手册.pdf
- Elabscience磷酸盐比色法测试盒品类信息型号信息说明书用户手册.pdf
- BaiRui贝锐向日葵Q0.5用户手册.pdf
- LICHEN ROTATIONAL VISCOLOGY MEASUREMENT DEVICE USER’S INSTRUCTION说明书用户手册.pdf
最近下载
- 光伏电子产品的设计与制作-电子课件项目3-光伏草坪灯控制电路的设计与制作.pptx VIP
- 2024-2025学年江苏信息职业技术学院单招《数学》试卷含答案详解【考试直接用】.docx VIP
- 党员个人自评总结3篇-党员个人自评 党员个人自评小结 党员个人自评总结3篇.doc VIP
- 人教版英语新目标八年级下册第二单元教材词汇及重点搭配讲解.docx VIP
- 2026年演出经纪人《思想政治与法律基础》真题库及参考答案一套.docx VIP
- 索拉非尼治疗肝癌.pptx VIP
- 【高清可复制】HGT21629-2021 管架标准图_251-300.pdf VIP
- 新版人教版七年级下册地理全册教案(完整版)教学设计.docx
- 2025年北京事业单位真题.docx VIP
- 临时用地表(可编辑).pdf VIP
原创力文档

文档评论(0)