shell脚本中的if语句与case语句

2023-11-01

一、if语句

if语句从上至下按照顺序依次判定执行
格式如下:

 if  [ ]     ##判定条件(如果)
then   ##那么
elif     ###重新的一次判定(又如果)
then  ##那么
.......
else  ##否则(可以添加也可以不加)
fi    ###结尾(倒写)

注意:其中的elif不限个数,可以多次判定

步骤如下
编写脚本让输入指定内容时输出不同,否则报错
在这里插入图片描述
执行如下
在这里插入图片描述
注意
if语句是按照顺序依次比对执行,有先后顺序的区别(排在后边的后比对,消耗时间)
修改脚本如下:
在这里插入图片描述
当输入为第一个判定条件:linux时监控执行过程只匹配一次
在这里插入图片描述
当为第二个判定条件时,发现先比对第一个,比对不上,比对第二个成功,输出
在这里插入图片描述
当为第三个条件时
在这里插入图片描述
当为例外的判定条件时
在这里插入图片描述

二、case语句

case语句列出所有情况,执行时只比对一次,按照条件匹配,不按顺序执行,比对成功直接跳转,在考虑大小写混用时直接比列列举,不用专设条件,省时

格式

case $1 in  ###
	westos|WESTSO|wEstos|WESTos)   ##条件1并且列举各种大小写情况
	echo linux  ##执行内容
	;;  ##分隔符
	linux)  ##条件二
	echo westos  ##执行内容
	;;  ###分割符
	*)  ###例外条件(相当于否则)
	echo error
esac##结尾(倒写)

修改脚本如下:(与if语句比对照应)
在这里插入图片描述
输入条件一时
在这里插入图片描述
输入为大写时也执行
在这里插入图片描述
输入条件二时,也是直接跳转,不比对条件1

在这里插入图片描述
条件三
在这里插入图片描述
例外条件
在这里插入图片描述
由此可见case语句的跳转判定比if更高效。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

shell脚本中的if语句与case语句 的相关文章

  • 笔记:RTSP在线视频流资源地址

    1 在线视频流地址 rtsp wowzaec2demo streamlock net vod mp4 BigBuckBunny 115k mov 2 播放软件 vlc 下载地址 Downloads VideoLAN 使用如下 打开媒体 打开
  • 股票集合竞价规则详解,什么是集合竞价?集合竞价技巧分析

    股票集合竞价规则是每一个新入股市的朋友都应该首先掌握的一个知识要点 然而很多新入市的朋友对于股票集合竞价规则了解的是很少的 今天为了帮助更多的朋友掌握这个规则 笔者作为金融市场的铁杆粉丝 从三年前开始 就对金融市场的理论和实践方面的认识逐渐
  • 【空气检测仪专题】9.画PCB图

    空气检测仪专题 9 画PCB图 移植了EmWin并写了demo程序 效果如下 很久没有画PCB图了 慢慢画呗
  • 北大网站服务器关闭,北京大学网络服务

    nbsp 1 如何在Windows2000环境下配置静态IP地址 第一步 选择 控制面板 选择 网络和拨号连接 第二步 鼠标右键选择 本地连接 或者相应的网卡名称 选择 属性 第三步 选择 TCP IP协议 第四步 配置相应的参数 IP地址
  • 查看SELinux状态&关闭SELinux

    1 查看SELinux状态 1 1 getenforce getenforce 命令是单词get 获取 和enforce 执行 连写 可查看selinux状态 与setenforce命令相反 setenforce 命令则是单词set 设置
  • Qt获取当前时间(超详细)

    Qt获取当前时间 超详细 转载自别的网站 时间日期是经常遇到的数据类型 Qt 中时间日期类型的类如下 QTime 时间数据类型 仅表示时间 如15 23 13 QDate 日期数据类型 仅表示日期 如2017 4 5 QDateTime 日
  • unity timeline 用脚本添加事件运用

    ExposedReference
  • 变长模板:模板参数包和函数参数包

    模板参数包 我们先看看变长模板的语法 以tuple为例 template
  • Qt 菜单背景设置颜色 菜单设置颜色

    菜单红色 菜单栏紫色 this gt setStyleSheet QMenu item selected background color ff0000 QMenuBar background color ee00ff 紫色 看效果 菜单背
  • 什么是vue生命周期?

    vue生命周期是指vue实例对象从创建之初到销毁的过程 vue所有功能的实现都是围绕其生命周期进行的 在生命周期的不同阶段调用对应的钩子函数实现组件数据管理和DOM渲染两大重要功能 vue生命周期的这八个阶段 1 创建前 beforeCre
  • ut本地系统服务器,mysql本地服务器地址

    mysql本地服务器地址 内容精选 换一换 云数据库RDS服务提供使用内网 公网和数据管理服务 Data Admin Service 简称DAS 的连接方式 VPC 虚拟私有云 Virtual Private Cloud 简称VPC ECS
  • R语言中向量和矩阵简单运算

    一 向量运算 向量是有相同基本类型的元素序列 一维数组 定义向量的最常用办法是使用函数c 它把若干个数值或字符串组合为一个向量 1 R语言向量的产生方法 gt x lt c 1 2 3 gt x 1 1 2 3 2 向量加减乘除都是对其对应
  • IDEA默认Maven设置

    IDEA是自带Maven的 但版本有点低 故自己下了新版的Maven 但每次使用创建或者导入Maven项目的时候 IDEA都会使用系统默认的Maven 如下图所示 此时 如果想默认使用自定义安装的Maven 需要点击Maven home d
  • CentOS7 安装MySQL 图文详细教程

    目录 一 检查是否已经安装过MySQL 方法一 方法二 二 安装MySQL 1 将压缩包传到服务器 2 解压文件 3 重命名解压后的文件 4 检查是否有mysql用户组和mysql用户 5 进入mysql目录 更新权限
  • Unity无限列表插件-EnhancedScroller 简单操作步骤

    1 导包 将EnhancedScroller v2 15 6 unitypackage导入到场景中 2 创建画布 创建一个canvas画布 3 创建Scroll 在画布下创建一个UI gt Scroll View 将组建内Scrollbar
  • 厦门PX项目迁址:意义有限的进步

    朱金灿 在新浪网上看到这样一则消息 来自厦门消息称 福建省政府和厦门市政府上周末决定顺从民意 停止在厦门海沧区兴建台资翔鹭集团对二甲苯 paraxylene 简称 PX 工厂 将该项目迁往漳州古雷半岛兴建 厦门市将赔偿翔鹭集团 并在发改委批
  • 计算机视觉:窥探数字世界的眼睛

    目录 简介 一 计算机视觉的起源与发展 二 计算机视觉的应用领域 三 计算机视觉的挑战与未来发展 结论 简介 计算机视觉 Computer Vision 是人工智能 AI 领域中的一个重要分支 专注于研究如何使计算机系统能够 看见 理解和解
  • 学术界到底能不能用 ChatGPT?

    全民在日常工作 学习 测试过程中使用 ChatGPT 已经不是什么秘密了 但是光明正大地在学术论文中使用 还把 ChatGPT 的 Regenerate response 按钮标签文字复制到论文中 尚未在方法或致谢一栏提及任何有关 Chat
  • Windows下搭建PHP调试环境(phpstudy+VScode)

    Windows下搭建PHP调试环境 phpstudy VScode 0x00 问题背景 0x01 配套环境 0x02 php Xdebug简介 官方介绍 Xdebug扩展启用 0x03 php ini配置 0x04 vscode配置 VSc
  • k8s dashboard安装

    安装 wget https raw githubusercontent com kubernetes dashboard v2 5 1 aio deploy recommended yaml kubectl apply f recommen

随机推荐

  • springboot集成log4j2

    一 前言 1 为什么要使用log4j2作为我们的日志记录管理框架呢 答 springboot默认使用logback作为日志记录框架 常见的日志记录框架有log4j logback log4j2 2 我们在项目中经常使用一个叫SLF4J的依赖
  • 十分钟学会写shell脚本

    大家好 我是handsomecui 下面我为大家讲解一下shell脚本的写法 讲的不好的地方 欢迎大家留言拍砖 1 在linux下会写shell脚本是非常重要的 下面我参照例子给大家展示几个脚本 顺带这学习shell 的语法 什么时候hel
  • 汇编语言(1)——从机器到汇编

    汇编语言 王爽 著 读书笔记 1 汇编语言的出现 最早期出现的计算机 是名副其实的 计算 机 这个机器可以执行一系列特定的指令 即机器指令 而由机器指令构成的集合被称为指令集 也就是我们说的机器语言 机器指令是由一系列的二进制数字0和1构成
  • EMC整改流程及常见问题

    电磁兼容EMC整改专题 目录 EMC整改流程及常见问题 1EMC整改意见 2EMC整改流程 3EMC整改的一些小建议 4总结 电磁兼容 EMC EMC小结之时钟辐射问题 一前言 二测试数据分析 三辐射超标的原因 四结语 EMC整改流程及常见
  • 人机交互期末复习要点

    文章pdf下载 点击下载pdf 注 我们网上的作业 老师说的考试题目 可能会考的重点 无 可能会考选择题 也可能会考大题 比如 人机交互设备 我们这次期末考试就考了 绪论 什么是人机交互技术 是指关于设计 评价和实现供人们使用的交互式计算机
  • matlab中float类型的_数据类型(一)——数值类型

    数值类型包括两种 整数类型和浮点数类型 整数类型 uint8 分别表示有 不带u 无 带u 符号和对应的数值范围 或者说是整数的位数 浮点数类型 单精度 single 和双精度 float 或者直接输入小数 因为matlab默认即为双精度
  • ARM定义特殊寄存器(*(volatile unsigned long *))的理解

    以前老是对ARM程序中 volatile unsigned long 不理解 今天看了两篇文章 觉得对理解这个很有用 当然这个不止在定义内部特殊寄存器有用 在用到外部总线时 根据具体情况 定义外部器件的地址也可以用 下面是文章一 终于理解了
  • 常用IDE正则表达式

    目录 1 notepad 正则表达式 2 VScode正则表达式 3 pycharm正则表达式 梳理常用工具的正则表达式使用 逐步增加其他工具 1 notepad 正则表达式 注意 Notepad 正则表达式字符串最长不能超过69个字符 转
  • Unity做MMD(一)资源处理

    文章目录 unity插件 Blender插件 两者对比 要想把mmd 的模型拿到unity中处理 主要有两个方法 第一个是通过unity的插件将pmx模型文件转化为fbx 第二个就是通过第三方软件将pmx处理 例如blender 如果是想把
  • acwing算法基础__提高__进阶_课

    文章目录 1 排序 1 1 快速排序 分治 1 2 归并排序 分治 2 二分 2 2 整数二分 2 3 小数二分 浮点数二分 3 高精度 4 前缀和与差分 5 双指针算法 6 位运算 7 离散化 8 区间合并 总结 要求 把算法的思想搞懂
  • Mybatis中ResultType和ResultMap的区别

    MyBatis中的ResultType和ResultMap都是用来映射查询结果到Java对象的 ResultType适合简单查询结果的映射 而ResultMap适合复杂查询结果及自定义映射关系的情况 ResultType指定了返回值类型 即
  • 【Unity2D】相机移动以及设置相机边界

    添加相机 添加相机时 首先需要在unity中添加 Cinemachine 包 第一次使用这个包时 需要在Package Manager中搜索并安装 安装Camera Mechine包后 添加2D Camera 设置跟随对象为Ruby 从Hi
  • 在线一键JS混淆还原

    当今 随着互联网的发展 越来越多的网站开始使用JavaScript来实现动态交互和用户体验 但是 由于JavaScript代码的开放性和易于复制 网站管理员需要采取一些措施来保护他们的代码 这就是JavaScript混淆工具产生的原因 js
  • 【经验-强制HTTPS-web】在服务器301强制HTTPS跳转,套上腾讯云CDN后,第一次访问发生不强制跳转HTTPS的问题解决方法

    我的个人站网址 https mdzz pro 今天偶然在编程群里展示了下个人站 没想到大佬居然说我的网站没有开Https 我当场懵逼了 不可能啊 面板上我开了强制Https啊 于是我自己用edge访问了一下 结果发现真是这样 第一次 第二次
  • vim常用设置---(.vimrc详细配置)

    vimrc配置文件内容如下 一般设定 设定默认解码 set fenc utf 8 set fencs utf 8 usc bom euc jp gb18030 gbk gb2312 cp936 不要使用vi的键盘模式 而是vim自己的 se
  • 设计模式--外观模式

    外观模式 属于结构型模式 基本原理 隐藏系统复杂性 为系统开放一个便于使用的接口 主要流程 1 创建系统和子系统 2 创建一个外观类 统一管理子系统的功能 并对外提供接口 注意 外观类是管理子系统和对外提供接口 include
  • 数据库DDL,DML

    数据库DDL DML 一 DDL操作数据库 查询数据库 SHOW DATABASE 创建数据库 创建 CREATE DATABASE 数据库名称 创建 判断 如果不存在则创建 CREATE DATABASE IF NOT EXISTS 数据
  • Cesium加载矢量数据探索——从geojson到矢量切片

    矢量数据由于包含确定的坐标信息 通常用于表达准确的空间位置实体 在cesium中 不支持对shp进行加载 而是需要对shp数据进行转换 一般cesium支持的shp格式如下 geojson topojson kml czml 通常来说 对于
  • 什么是线程?以及线程的总结。(十小点1700字)

    1 什么是程序 进程和线程 2 创建线程的三种方式 3 继承Thread类来创建线程和实现Runable接口创建线程的区别 4 线程的方法 线程的优先级别 编辑 5 线程的状态以及图解 6 多线程的概念 优点 缺点 7 线程同步的概念 编辑
  • shell脚本中的if语句与case语句

    一 if语句 if语句从上至下按照顺序依次判定执行 格式如下 if 判定条件 如果 then 那么 elif 重新的一次判定 又如果 then 那么 else 否则 可以添加也可以不加 fi 结尾 倒写 注意 其中的elif不限个数 可以多