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/bash

echo "请输入username: "
read username

echo "请输入password: "
read password

echo "==================="
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

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

英语四级翻译练习笔记③——大学英语四级考试2023年12月真题(第三套)

目录 引言(必看) 四级翻译评分标准分析及真题解析 四级翻译评分标准 四级翻译真题 学生作答 1. 评分 2. 修正翻译中的错误 错误标记: 3. 改正句子 4. 标出错误单词 5. 标准答案 6. 常考万能句子 7.重点单词的中文意思 引言&…

移动应用程序设计详解:基本概念和原理

移动应用程序设计是什么? 一般来说,应用程序设计师的核心职责是让用户有体验应用的欲望,而开发者负责让它正常工作。移动应用程序设计包括用户界面 (UI) 和用户体验 (UX)。设计者负责应用程序的整体风格,包括配色方案、字体选择、…

关于如何通过APlayer+MetingJS为自己的wordpress博客网页添加网易音乐播放器(无需插件)

本文转自博主的个人博客:https://blog.zhumengmeng.work,欢迎大家前往查看。 原文链接:点我访问 序言:最近在网上冲浪,发现大家的博客大部分都有一个音乐播放器能够播放音乐,随机我也开始寻找解决方法。可是找来找去我…

达梦数据库查看字符集、页大小

1.查看字符集select UNICODE (); 0 表示 GB18030,1 表示 UTF-8,2 表示 EUC-KR 2.查看页大小select SF_GET_PAGE_SIZE(); 也可以通过管理工具去查看

【组合数学 放球问题 虚拟点 小于等于转小于】1621. 大小为 K 的不重叠线段的数目

本文涉及知识点 放球问题 组合数学汇总 本题难道分:2198 LeetCode1621. 大小为 K 的不重叠线段的数目 给你一维空间的 n 个点,其中第 i 个点(编号从 0 到 n-1)位于 x i 处,请你找到 恰好 k 个不重叠 线段且每个线段…

菊花链通信技术整理

目录 一、菊花链简介 二、菊花链与CAN通信的区别 三、常见的菊花链AFE芯片 四、菊花链数据结构 五、菊花链方案介绍 一、菊花链简介 首先简单的说一下菊花链以及菊花链的应用,在目前国内的BMS开发中,我们应用最广泛的目前还还是分布式,…

代码随想录算法训练营第七天| 454.四数相加II 、383. 赎金信、 15. 三数之和、18. 四数之和

454.四数相加II 题目链接: 454.四数相加II 文档讲解:代码随想录 状态:没做出来,没想到考虑重复的情况! 题解: public int fourSumCount(int[] nums1, int[] nums2, int[] nums3, int[] nums4) {// 结果计数…

java的变量关系~使用和扩展

一、变量的概述 1、什么是变量 白话:变量就是一个装东西的盒子。 通俗:变量是用于存放数据的容器。我们通过变量名 获取数据,甚至数据可以修改。 2、变量在内存中的存储 本质:变量是程序在内存中申请的一块用来存放数据的空间,类似我们酒店的房间&a…

基于多源数据的微服务系统失败测试用例诊断

简介 本文介绍由南开大学、华为云及清华大学共同合作的论文:基于多源数据的微服务系统失败测试用例诊断。该论文已被FSE 2024(The ACM International Conference on the Foundations of Software Engineering) 会议录用,论文标题为: Fault D…

JS中的数组很重要,怎样定义(声明)

为什么呢?在java中有集合,数组的作用就弱了,其高光时刻基本都被集合代替了。在JS中没有集合,数组就有点忙不过来了。你说它重要不重要?! 在JS中,怎样定义一个数组呢? 数组的声明方…

动手学操作系统(二、编写MBR主引导记录)

动手学操作系统(二、编写MBR主引导记录) 文章目录 动手学操作系统(二、编写MBR主引导记录)1. 实模式和保护模式2. BIOS与MBR3. MBR程序Reference 在之前的学习内容中,我们已经实现了基本的仿真环境bochs的搭建&#xf…

【Linux】数据链路层协议+ICMP协议+NAT技术

欢迎来到Cefler的博客😁 🕌博客主页:折纸花满衣 🏠个人专栏:Linux 目录 👉🏻数据链路层👉🏻以太网以太网帧格式网卡Mac地址对比ip地址 👉🏻MTUMTU…

员工管理和激励怎么做?试试场景化激励解决方案!

截止到2020年底,中国企业主体数量达3858.3万,同比增速达11.1%。如何留住人才、激励人才以强化人才与企业“黏性”,最大化提升员工的忠诚度与敬业度,成为企业未来人才发展战略的主要方向之一。 一、传统激励方式存在哪些不足 传统的…

【NumPy】权威指南:使用NumPy的percentile函数进行百分位数计算

🧑 博主简介:阿里巴巴嵌入式技术专家,深耕嵌入式人工智能领域,具备多年的嵌入式硬件产品研发管理经验。 📒 博客介绍:分享嵌入式开发领域的相关知识、经验、思考和感悟,欢迎关注。提供嵌入式方向…

计算机找不到msvcr110.dll如何解决,总结5种简单靠谱的方法

在日常使用电脑的过程中,我们可能会遇到一些错误提示,其中之一就是“msvcr110.dll丢失”。这个错误通常会导致某些程序无法正常运行,为了解决这个问题,下面我将介绍5种有效的解决方法。 一,了解msvcr110.dll是什么 ms…

网络之再谈体系结构

大家都知道的是网络的体系结构,现代软件常用的体系结构无非是TCP/IP协议栈,OSI因为实现复杂并且效率没有TCP/IP协议栈好,所以不用OSI,但是,最近在复习网络知识的时候,发现了一些奇怪的地方,那就…

TinyEngine 低代码引擎:带你5分钟高效构建游戏登录界面

本文由体验技术团队 TinyEngine 项目成员李旭宏创作,欢迎大家实操体验,本体验项目基于 TinyEngine 低代码引擎提供的环境,通过体验简单拖、拉、拽的形式帮助开发者快速了解低代码引擎的使用流程,达到快速开发游戏登录界面的效果。…

yolox-何为混合精度计算AMP?

何为AMP? 全称:Automatic mixed precision自动混合精度。 功能:在神经网络推理过程中,实现针对不同层采用不同的数据精度进行计算,从而实现节省显存和加速训练的目的。 此处提到的不同数据精度包括:32位浮…

每日两题 / 131. 分割回文串 42. 接雨水(LeetCode热题100)

131. 分割回文串 - 力扣&#xff08;LeetCode&#xff09; 数据量较小&#xff0c;考虑直接暴力&#xff0c;每次dfs&#xff1a;以bg作为左区间&#xff0c;往右遍历&#xff0c;找到一段回文串区间后&#xff0c;将回文串插入vector<string>&#xff0c;并以下一个下标…

适合下班做的副业兼职、1天挣300,7天涨粉2万

最近小红书上有类视频火了&#xff01; 周周近财&#xff1a;让网络小白少花冤枉钱&#xff0c;赚取第一桶金 利用AI制作的漫画解说历史小说视频。视频以《明朝那些事儿》为蓝本&#xff0c;一上线就疯狂吸粉&#xff0c;多条视频内容都大爆了。 就是这个账号&#xff0c;仅仅…