目录
1. expect作用:
是建立在tcl语言基础上的一个工具,常被用于进行自动化控制和测试,解决shell脚本中交互的相关问题。
2. expect语言用法:
spawn | 开启免交户 开启expect |
expect | 捕捉屏幕上的关键字 |
exp_continue | 继续捕捉屏幕上的字 |
send | 发送指令 |
interact | 代表退出expect,但是会留在新的终端 |
expect eof | 代表退出expect 默认10s后,返回旧的终端。 |
3. 实例
yum install expect -y #先安装expect工具
vim /opt/test #写脚本
#!/usr/bin/expect 语言注意不是bash,是expect
spawn ssh 172.16.234.10
#开启免交互,继续跟踪
expect {
#捕捉屏幕上的关键字
"yes/no" { send "yes\n"; exp_continue }
#捕捉到屏幕上的关键字yes/no,输入yes。\n是回车。exp_continue继续捕捉
"password" { send "123\n"; exp_continue }
#继续捕捉到关键字passwdord,输入密码,继续捕捉
"#" { send "useradd lisi \n"}
#继续捕捉到屏幕上的关键字"#"号,创建用户lisi
}
expect eof
#退出expect
:wq
./ test #运行脚本