庆新机房建成出租 新机器高额特价优惠ing
L5630*2 16核16G 120G SSD 或者 1T机械 20M独享 799/月
L5630*2 16核32G 240G SSD 20M独享 899/月
迎新6月 欢迎咨询
联系人: 吴齐
QQ号 : 手机号:
地址:郑州市金水区花园路居易摩根中心
什么是Expect
Expect是一个用来实现自动交互功能的软件套件,是基于
TCL的脚本编程工具语言,方便学
习,功能强大。
2)为什么要使用Expect
在现今的企业运维中,自动化运维
已经成为运维的主流趋势,但是在很多情况
下,执行系统命令或程序时,系统会以交互式的形式要求运维人
员输入指定的字符串,之后才能继续执行命令。例如,为用户设置密码时,一般情况下就需要
手工输入2次密码。
简单来说,Expect就是用来自动实现与交互式程序通信的,而无需管理员
的手工干预。比如
SSH、FTP远程连接等,正常情况下都需要手工与它们进行交互,而使用Expect就可以模
拟手工交互的过程,实现自动与远端程序的交互,从而达到自动化运维的目的。
以下是Expect的自动交互工作流程简单说明,依次执行如下操作:
spawn启动指定进程——>expect获取期待的关键字——>send向指
定进程发送指定字符——>
进程执行完毕,退出结束
Expect程序中的命令是Expect的核心
1)spawn命令
在Expect自动交互程序执行的过程中,spawn命令
是一开始就需要使用的命令,通过spawn执行一个命令或程序,之后所有的Expect操作都会在
这个执行过的命令或程序进程中
进行,包括自动交互功能,因此如果没有spawn命令,Expect程序将无法实现自动交互。
所以使用spawn命
令是Expect程序实现自动交互工作流程中的第一步,也是最关键的一步