目录
一、expect
expect的执行过程
1、追踪指令:spawn 表示开启一个追踪
2、捕捉提示进行交互的关键词
3、传入交互指令,回车执行
1、安装环境
expect它是一个程序,所以需要进行安装,才能使用
2、基本命令
1、脚本解释器
expect 脚本中首先引入文件,表明使用的是哪一个shell
#!/usr/bin/expect
2、spawn(跟踪)
spawn 后面通常跟一个Linux执行命令,表示开启一个会话、启动进程,并追踪后续交互信息。
例如:spawn passwd root
3、expect (捕捉)
判断上次输入结果中是否包含指定的字符串,如果有则立即返回,否则就等待超时时间后返回:只能捕捉由spawn启动的进程的输出;用于接收命令执行后的输出,然后和期望的字符串匹配
4、send (发送)
向进程发送字符串,用于模拟用户的输入;该命令不能自动回车换行,一般要加 \r 或者 \n ,表示换行。
方式一:
expect "密码" {send "123123\r"} #send跟expect放在同一行,需要将send用{}引起来方式二:
expect "密码"
send "123123\r" #send跟expect分两行写方式三:
expect支持多个分支
expect #只要匹配了其中一个情况,执行相应的send语句后退出该expect语句
"密码1"{send "111111\r"}