expect自动交互

        在执行命令或脚本的时候,当控制台提示我们需要输入账号密码、参数等信息的时候,expect可以将预设的参数值自动输入到控制台,实现了自动交互。

1. 安装expect

yum install expect 

2. 案例:

创建 demo.exp 文件,并添加以下内容

#!/usr/bin/expect# 定义变量
set username "小白"
set password "123abc"# spawn 可以执行脚本或命令,并监控需要交互的提示信息
spawn sh test.sh
# 当出现指定提示语的时候
expect "请输入username"
# 自动输入内容并回车确定
send "${username}\r"
expect "请输入password"
send "${password}\r"
# 退出自动交互
expect eof 

创建test.sh文件,并添加以下内容

#!/bin/bashecho "请输入username: "
read usernameecho "请输入password: "
read passwordecho "==================="
echo "$username"
echo "$password"

执行命令:expect demo.exp

3.expect其它语法


# 接收第一个参数并赋值给变量
set arg [lindex $argv 0]# 条件判断
if { $arg == "11" } {# 输出内容puts "111"
} elseif {$arg == "22"} {puts "222"
} else {puts "参数错误"# 退出脚本exit
}# 执行Linux命令,这种方式执行Linux命令返回的内容不会输出到控制台上,可使用>>将内容重定向到日志文件中
exec echo "123" >> test.log
# 获取上一条命令返回的状态码
set code [catch {exec uname -a}]
puts $code

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/17669.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux 系统中 ODBC 驱动的安装与配置指南

Linux 下的 ODBC 包 从发布包中获取,包名为 openGauss-*.*.0-ODBC.tar.gz。Linux 环境下,开发应用程序要用到 unixODBC 提供的头文件(sql.h、sqlext.h 等)和库 libodbc.so。这些头文件和库可从 unixODBC-2.3.0 的安装包中获得。 …

降压芯片SL3036耐压100V 电机驱动板应用48-85V降压12V 1A以内

降压芯片SL3036以其卓越的耐压特性,能够在高达100V的电压环境下稳定运行,为电机驱动板等应用提供了强大的电源支持。这款芯片在电机驱动板中发挥着至关重要的作用,特别是在那些需要48-85V宽范围输入电压并降压至稳定12V输出的场景中&#xff…

delphi advstringgrid 表格中加checkbox

加checkbox for i : 0 to sg.RowCount - 1 dobeginsg.AddCheckBox(1,i,false,false);for j : 0 to sg.ColCount - 1 dobeginif j <> 1 thensg.CellProperties[j,i].ReadOnly : true;//只读end;end; 读取&#xff0c;设置checkbox&#xff0c;全选&#xff0c;反选 proced…

信息系统项目管理师0134:输出(8项目整合管理—8.8实施整体变更控制—8.8.3输出)

点击查看专栏目录 文章目录 8.8.3 输出 8.8.3 输出 批准的变更请求 由项目经理、CCB或指定的团队成员&#xff0c;根据变更管理计划处理变更请求&#xff0c;做出批准、推迟或否决的决定。批准的变更请求应通过指导与管理项目工作过程加以实施。对于推迟或否决的变更请求&…

AI 前沿发展摘要

&#x1f514; AI 前沿发展摘要 1⃣️ ChatScene: 一句话生成自动驾驶关键场景 主要功能: Chat Scene 能够在CARLA仿真环境中创建多样化和复杂的场景, 有效地弥合了交通场景文本描述和CARLA实际仿真之间的鸿沟 效果: 通过使用生成的安全关键场景来微调不同的基于RL的自动驾…

远程桌面连接--“发生身份验证错误。要求的函数不受支持”

出现身份验证错误 要求的函数不受支持的问题&#xff0c;可以通过以下几种方法尝试解决&#xff1a;12 对于Windows 10家庭版用户&#xff0c;需要修改注册表信息。具体步骤如下&#xff1a; 按下WIN R&#xff0c;输入regedit&#xff0c;点击确定&#xff0c;打开注册表编辑…

如何使用Studio 3T导出MongoDB数据成excel?

导出MongoDB查询集合数据成excel 1. 新建查询页面&#xff0c;输入指定的查询语句&#xff0c;执行查询获取结果。 这里以查询集合accountbackLogger表中的reqTime字段日期是2024年5月的数据为列。 db.getCollection("accountbackLogger").find({reqTime:{$gte: IS…

讯方·智汇云校助力多所高校斩获华为ICT大赛2023-2024全球总决赛佳绩

2024年5月26日&#xff0c;华为ICT大赛2023-2024全球总决赛闭幕式暨颁奖典礼在深圳举行。讯方技术14所合作院校的18支队伍在此次大赛中荣获系列大奖。 本届大赛为华为历届最大规模的线下比赛&#xff0c;共吸引了全球80多个国家和地区、2000多所院校、17万余名学生报名参赛&am…

超好用!图像去雾算法C2PNet介绍与使用指南

《博主简介》 小伙伴们好&#xff0c;我是阿旭。专注于人工智能、AIGC、python、计算机视觉相关分享研究。 ✌更多学习资源&#xff0c;可关注公-仲-hao:【阿旭算法与机器学习】&#xff0c;共同学习交流~ &#x1f44d;感谢小伙伴们点赞、关注&#xff01; 《------往期经典推…

hive3从入门到精通(一)

Hive3入门至精通(基础、部署、理论、SQL、函数、运算以及性能优化)1-14章 第1章:数据仓库基础理论 1-1.数据仓库概念 数据仓库&#xff08;英语&#xff1a;Data Warehouse&#xff0c;简称数仓、DW&#xff09;,是一个用于存储、分析、报告的数据系统。 数据仓库的目的是构…

红酒与不同烹饪方法的食物搭配原则

红酒与食物的搭配是一门艺术&#xff0c;而不同烹饪方法的食物与红酒的搭配也有其与众不同之处。红酒与食物的搭配不仅涉及到口感、风味和营养&#xff0c;还与烹饪方法和食物质地等因素息息相关。云仓酒庄雷盛红酒以其卓着的品质和丰富的口感&#xff0c;成为了实现完善搭配的…

Java解析并修改JSON:将isShow属性改为false

哈喽&#xff0c;大家好&#xff0c;我是木头左&#xff01; 在Java中&#xff0c;可以使用各种库来处理JSON数据。其中&#xff0c;Jackson和Gson是两个非常流行且功能强大的库。在这篇文章中&#xff0c;将使用Jackson库来解析给定的JSON字符串&#xff0c;将其转换为Map对象…

Linux-CentOS7-解决vim修改不了主机名称(无法打开并写入文件)

Linux-CentOS7-修改主机名称 修改之后使用强制保存退出也不行。 解决办法&#xff1a; 使用hostnamectl命令进行修改 查看系统主机名和信息&#xff1a; hostnamectl这条命令会显示当前系统的主机名、操作系统信息、内核版本、架构信息等相关信息。 修改系统主机名&#xff1…

大模型时代:生活将如何被重塑?

大模型时代&#xff1a;生活将如何被重塑&#xff1f; &#x1f604;生命不息&#xff0c;写作不止 &#x1f525; 继续踏上学习之路&#xff0c;学之分享笔记 &#x1f44a; 总有一天我也能像各位大佬一样 &#x1f3c6; 博客首页 怒放吧德德 To记录领地 &#x1f31d;分享…

Midjourney进阶必看 | 垫图效果的必备技能

还在纠结Midjourney垫图效果不佳&#xff1f;快看看是不是这5点没有做好&#xff01; 前言一、内容形式要一致二、用文本描述强调画面内容三、尝试不同的--iw参数四、用--no参数去除隐藏干扰项五、记得多生成几次 总结 前言 图像提示词&#xff0c;也就是垫图&#xff0c;是Mi…

YOLOv8+PyQt5农作物杂草检测系统完整资源集合(yolov8模型,从图像、视频和摄像头三种路径识别检测,包含登陆页面、注册页面和检测页面)

农作物杂草检测YOLOV8(https://mbd.pub/o/bread/mbd-ZpaTl5tv)_哔哩哔哩_bilibili 资源包含可视化的农作物杂草检测系统&#xff0c;基于最新的YOLOv8训练的农作物杂草检测模型&#xff0c;和基于PyQt5制作的可视化农作物杂草检测系统&#xff0c;包含登陆页面、注册页面和检测…

利用映射算子打印菱形

文章目录 一、利用RDD完成&#xff08;一&#xff09;右半菱形&#xff08;二&#xff09;左半菱形&#xff08;三&#xff09;完整菱形&#xff08;四&#xff09;输出任意大菱形 二、利用Java完成&#xff08;一&#xff09;右半菱形&#xff08;二&#xff09;左半菱形&…

栈和队列专题(LeetCode)

目录 有效的括号题解代码加解释 用队列实现栈题解代码加解释 设计循环队列题解代码加解释 用栈实现队列题解代码加解释 有效的括号 题解 左括号从s字符串中取出来放入栈中 s中就只有右括号了 那么栈顶的左括号和s的右括号匹配即可 代码中也详细解释了左括号和右括号多少的问题…

Integer包装类

面试题&#xff1a; 自动装箱:把基本数据类型会自动的变成其对应的包装类 自动拆箱:把包装类自动的变成其对象的基本数据类型 package Integer;public class Demo {public static void main(String[] args) {Integer i 10;String binaryString Integer.toBinaryString(i);Str…

linux系统常用压缩和解压命令

文章目录 Ubuntu 系统中的文件压缩与解压指南一、常用的压缩和解压工具二、tar 工具三、gzip 工具四、bzip2 工具五、zip 和 unzip 工具六、7z 工具乱码批量解压脚本七、总结 Ubuntu 系统中的文件压缩与解压指南 在 Ubuntu 系统中&#xff0c;文件压缩与解压是日常操作中非常常…