shell登录 脚本 expect
2024-09-06 19:27:32
作用
工作中,我们运行命令、脚本或程序时,这些命令、脚本或程序都需要从终端输入某些继续运行的指令,而这些输入都需要人为的手工进行。
利用expect,则可以根据程序的提示,模拟标准输入提供给程序,从而实现自动化交互执行
“模式-动作”,expect 匹配到一个模式,就执行对应的动作
常用命令
- spawn
*spawn命令用来启动新的进程,spawn后的send和expect命令都是和使用spawn打开的进程进行交互 - expect 匹配模式
*expect等待一个进程的反馈,我们根据进程的反馈,再发送对应的交互命令 - send
*send命令将字符串(可以是变量)发送到进程
- \r表示确认操作或者换行
- 注意空格
- interact
*interact用于退出自动化,进入人工交互
#! /usr/bin/expect -f
set user //设置变量
set host
set password
spawn ssh $user@$host
expect "*password:*"
send "$password\r"
interact
expect eof
最新文章
- Java的学习之路
- svn清理失败且路径显示乱码
- 【转】SQL Server中关于跟踪(Trace)那点事
- css 样式设计(一)( 在线150个例子 | 背景 | 文本 | 字体 | 链接 | 列表 | 表格 | 盒模型 | 边框 | 轮廓 | 边距 | 填充 |分组和嵌套 | 尺寸 | 定位 | 浮动 |对齐 )
- Android OkHttp详解
- Session笔记
- js 添加enter事件
- 【随记】还原SQL Server数据库步骤
- Color the ball
- 分割gbk中文出现乱码的问题解决
- JS 之设置元素样式的改变,可以利用样式框架
- js实现谷歌坐标转百度坐标
- 回归模型效果评估系列1-QQ图
- SOFA 源码分析— 自定义路由寻址
- 【转载】 .NET框架设计—常被忽视的C#设计技巧
- PHP中empty,isset,is_null的区别
- 微软 microsoft calendar control 11.0 控件下载
- AWT初步— 事件处理模型
- bugly中批量隐藏版本
- gpg无法生成密钥对的问题