首页 > 其他分享 >expect用法

expect用法

时间:2022-10-21 11:12:55浏览次数:54  
标签:用法 sh 专栏 expect qiu ly

expect用法(实例讲解)

ly_qiu

于 2020-04-25 22:31:04 发布

4561
收藏 12
分类专栏: shell
版权

shell
专栏收录该内容
16 篇文章1 订阅
订阅专栏
expect用法
expect 自动应答命令(用于交互式命令的自动执行)
set timeout 1 执行等待1秒,一秒后继续向下执行
set NAME [ lindex $argv 0 ] 定义变量
sapwn 监控程序
send 发送问题答案给交互命令
\r 回车
exp_continue 继续回答下面的
expect eof 表示回答完那些问题后,退出expect环境
interact 问题回答完后留在交互界面
1)问题脚本

#!/bin/bash
read -p "what's your name:" NAME
read -p "How old are you: " AGE
read -p "Which objective: " OBJ
read -p "Are you ok? " OK
echo $NAME is $AGE\'s old study $OBJ feel $OK
1

 

 


2
3
4
5
6

直接执行,需要手动输入问题的答案

 

 


2)应答脚本

先yum install expect -y进行安装

vim answer.exp 此时就不是以.sh结尾了

 

 


使用expect调用,记住必须chmod +x ask.sh给可执行权限

 

 


使用expect,即使ask.sh里面包含的内容不全(注释掉年龄),也不会影响正常运行

 

 

 

 


脚本练习:
auto_ssh 192.168.0.1 westos
可以自动连接目标主机当目标主机网络不通时报错
————————————————
版权声明:本文为CSDN博主「ly_qiu」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/ly_qiu/article/details/105753981

标签:用法,sh,专栏,expect,qiu,ly
From: https://www.cnblogs.com/cherishthepresent/p/16812791.html

相关文章

  • @PostMapping和@GetMapping用法详解
    publicclassApplyObject{privateStringid;privateStringname;}1、使用post方法调用前端传递参数如果是一个object的话,如{id:'1',name:'2222'}后......
  • if ... else和switch语句用法
    关于ifelse和switch语句用法:if...else语句:判断条件为真时则执行语句1;否则执行elseif(判断表达式){语句1;}else{语句2;}switch语句:可以有多种选择。switch(表达式){case情况1:语......
  • adobe安装提示错误“Error:SyntaxError:JSON Parse error:Unexpected EOF”的解决方法
    mac电脑安装Adobe时,会提示错误“Error:SyntaxError:JSONParseerror:UnexpectedEOF”,这是怎么回事儿的,不管您是安装AI、PS、PR还是LR,如果也遇到相同的问题,可以参考一下方......
  • adobe安装提示错误“Error:SyntaxError:JSON Parse error:Unexpected EOF”的解决方法
    mac电脑安装Adobe时,会提示错误“Error:SyntaxError:JSONParseerror:UnexpectedEOF”,这是怎么回事儿的,不管您是安装AI、PS、PR还是LR,如果也遇到相同的问题,可以参考一下方......
  • os用法
    os.path.dirname(path)语法:os.path.dirname(path)功能:去掉文件名,返回目录如:print(os.path.dirname("E:/Read_File/read_yaml.py"))#结果:E:/Read_Fileprint(os.path......
  • leetcode 197. Rising Temperature sql_Date用法
    ​​https://leetcode.com/problems/rising-temperature/description/​​题目需要选出今天比昨天气温高的ID用join,默认是inner join需要左右两边同时有才行。然后就是用on......
  • 时间模块--time和datetime的区别与用法
    时间模块--time和datetime的区别与用法2022-10-19一.Python中表示时间的两种方式:时间戳:相对于1970.1.100:00:00以秒计算的偏移量,唯一的时间元组struct_time:共有9个......
  • Oracle substr用法
    一、正序截取字符substr(字符串,起始位置,截取长度)二、倒叙截取字符substr(字符串,截取长度)举例:substr('hello',-3)从o开始截取,共截取三位,结果为'llo'......
  • C# List<T>的详细用法
    所属命名空间:System.Collections.GenericpublicclassList<T>:IList<T>,ICollection<T>,IEnumerable<T>,IList,ICollection,IEnumerableList<T>类是ArrayList......
  • python当中map,reduce和filter函数用法和区别
    在python当中,关于map,reduce和filter函数用法。map:对任何可迭代序列中的每一个元素应用对应的函数。python3中返回的是迭代器。reduce:将序列中所有的元素进行合并运算......