expect自动化交互

目录

[1. expect作用:](#1. expect作用:)

[2. expect语言用法:](#2. expect语言用法:)

[3. 实例](#3. 实例)


1. expect作用:

是建立在tcl语言基础上的一个工具,常被用于进行自动化控制和测试,解决shell脚本中交互的相关问题。

2. expect语言用法:

|------------------|-------------------------------|
| spawn | 开启免交户 开启expect |
| expect | 捕捉屏幕上的关键字 |
| exp_continue | 继续捕捉屏幕上的字 |
| send | 发送指令 |
| interact | 代表退出expect,但是会留在新的终端 |
| expect eof | 代表退出expect 默认10s后,返回旧的终端。 |

3. 实例

bash 复制代码
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   #运行脚本
相关推荐
暖核15 分钟前
华为云实战:基于WordPress的企业网站上云与高可用架构部署
运维·华为云
是店小二呀20 分钟前
AdGuard Home 部署实战:Linux/Windows 安装、DNS 配置与固定公网管理
linux·运维·windows
yulingfeng5926 分钟前
虚拟机开机时自动挂载目录
linux·运维·服务器
滕州市燕猫虎计算机科技工作室个体工商户32 分钟前
查看Docker里的日志
运维·docker·容器
广州浮点FLOATLIC33 分钟前
ANSYS许可证排队时怎样确认是模块还是并发数不足
运维·服务器·网络
JavaPub-rodert37 分钟前
Docker Compose 实战:一键部署你的完整应用环境
运维·docker·容器
海盗123438 分钟前
微软技术日报 2026-09-11:VS Code 语音与定时自动化上线,Copilot 键终于可改映射
microsoft·自动化·copilot
风哥2号1 小时前
数据库教程FGMT18‑Oracle‑EMCC智能化集中运维管理系统
运维·数据库·oracle
代码方舟1 小时前
零信任架构实战:基于天远企业四要素验证构建自动化B2B供应链金融网关
人工智能·金融·架构·自动化
少司府1 小时前
Linux系统篇(一)指令篇·一:初识Linux及其基本指令
linux·运维·服务器·网络·阿里云·linux系统