shell中利用expect实现自动化输入

expect是用于自动化交互任务的工具,尤其适用于需要手动输入的情况,如SSH登录、设置密码等。它通过spawn执行命令,expect进行匹配,send发送输入,exp_continue继续匹配。在SSH登录案例中,可以通过expect脚本实现自动化操作。
摘要由CSDN通过智能技术生成

expect概述

  • expect是一个自动化交互套件,主要应用于执行命令和程序时,系统以交互形式要求输入指定字符串,实现交互通信 。
  • 使用场景 :
    执行系统命令或程序时,有些系统会以交互式的形式要求输出指定的字符串之后才能执行命令,如用户设置密码 ,判断yes/no,ssh登录,免密等

基本命令介绍

spawn命令
作用 :执行一个命令或程序

语法 :spawn 选项 需要执行的命令或程序
选项 :
	-open: 表示启动文件进程
	-ignore:表示忽略某些信号

expect命令
作用 :获取spawn执行命令或程序的结果 并对比与事先指定关键字是否的相匹配 若一样则执行后续动作

语法 : expect 表达式 [动作]

send命令
作用 :指定执行动作 (就是说expect对比成功后你先输入啥东西)

语法 :send "要执行的东西"
说明 :\r表示回车、\n表示换行、\t表示制表符等

exp_continue命令

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值