Linux网络——Shell编程之条件语句—if 、case

news2025/1/23 10:38:31

Linux网络——Shell编程之条件语句—if 、case

  • 一、条件测试
      • 1.test命令
      • 2.文件测试
      • 3.整数值比较
      • 4.逻辑测试
  • 二、if语句
      • 1.单分支结构
      • 2.双分支结构
      • 3.多分支结构
      • 4.实践操作
  • 三、case分支语句
      • 1.case多分支结构
      • 2.实践操作

一、条件测试

1.test命令

测试表达式是否成立,若成立返回0,否则返回其他数值

语法:
格式1: test 条件表达式
格式2: [ 条件表达式 ]

2.文件测试

语法:[ 操作符 文件或目录 ]
常用的测试操作符

选项说明
-d测试是否为目录(Directory)
-e测试目录或文件是否存在(Exist)
-f测试是否为文件(File)
-r测试当前用户是否有权限读取 (Read)
-w测试当前用户是否有权限写入 (Write)
-x测试当前用户是否有权限执行 (Excute)权限

在这里插入图片描述

3.整数值比较

语法:[ 整数1 操作符 整数2 ]

常用的测试操作符

选项(只能比较整数值)符号说明
-eq==等于(Equal)
-ne!=不等于 (Not Equal)
-gt>大于 (Greater Than)
-lt<小于(Lesser Than)
-le=<小于或等于 (Lesser or Equal)
-ge>=大于或等于(Greater or Equal)

在这里插入图片描述

4.逻辑测试

语法:
格式1:[ 表达式1 ] 操作符 [ 表达式2 ]…
格式2:命令1 操作符 命令2…

常用的测试操作符

操作符符号说明
-a 或 &&逻辑与“而且”
-o 或 丨丨逻辑或“或者”
!逻辑否“非”

在这里插入图片描述

二、if语句

1.单分支结构

语法:
if 条件测试操作
  then 命令序列
fi

在这里插入图片描述

2.双分支结构

语法:
if 条件测试操作
  then 命令序列1
  else 命令序列2
fi

在这里插入图片描述

3.多分支结构

语法:
if 条件测试操作1
  then 命令序列1
elif 条件测试操
  then 命令序列2
  else 命令序列3
fi

在这里插入图片描述

4.实践操作

1.提示用户输入内容,使用if 语句判断输入的内容是否为整数,再判断输入的内容是奇数还是偶数。
在这里插入图片描述
在这里插入图片描述

2.提示用户输入100米赛跑的秒数,要求判断秒数大于0且小于等于10秒的进入选拔赛,大于10秒的都淘汰,如果输入其它字符则提示重新输入;进入选拔赛的成员再进一步判断男女性别,男生进男生组,女生进女生组,如果输入错误请提示错误
在这里插入图片描述
在这里插入图片描述

三、case分支语句

1.case多分支结构

语法:
case 变量值 in
模式1)
  命令序列1
  ;;
模式)
  命令序列2
  ;;
  ......
*)
  默认命令序列
esac   

在这里插入图片描述

2.实践操作

示例:用case语句在/etc/init.d/目录中写一个firewalld脚本,并加入到系统服务管理中使能够使用 service firewalld start|stop|restart|status 来管理firewalld服务,要求如果命令选项不对,则提示 “用法: $0 {start|stop|status|restart}”。
在这里插入图片描述在这里插入图片描述

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

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

相关文章

信息收集(二)IP信息收集

信息收集&#xff08;一&#xff09;域名信息收集 什么是CDN&#xff1f; 内容分发网络&#xff08;CDN&#xff09;&#xff1a; 是指企业利用分布在不同区域的节点服务器群组成流量分配管理平台&#xff0c;为用户提供内容分散存储和高速缓存服务 在渗透测试过程中&#x…

大数据好学么

大数据本质上是海量数据。 以往的数据开发&#xff0c;需要一定的Java基础和工作经验&#xff0c;门槛高&#xff0c;入门难。 如果零基础入门数据开发行业的小伙伴&#xff0c;可以从Python语言入手。 Python语言简单易懂&#xff0c;适合零基础入门&#xff0c;在编程语言…

kafka集群模拟单节点故障

这里通过kafka manage来展示节点宕机效果 现在三台主机节点均正常 topic正常识别到三个broker leader也均匀分配到了三个broker上 现在把节点id为0的主机模拟宕机 可以通过以上两张图片看到每个topic现在只识别到了两个broker节点,broker id为0的节点已经被剔除掉了 isr列…

SpringBoot框架(邮件发送Mail|持久层框架JPA|Extra前后端分离跨域处理|接口管理Swagger)这一篇就够了(超详细)

&#x1f648;作者简介&#xff1a;练习时长两年半的Java up主 &#x1f649;个人主页&#xff1a;老茶icon &#x1f64a; ps:点赞&#x1f44d;是免费的&#xff0c;却可以让写博客的作者开兴好久好久&#x1f60e; &#x1f4da;系列专栏&#xff1a;Java全栈&#xff0c;计…

【Python表白集】没有哪个女孩子 不喜欢花 不喜欢惊喜:“一束花的仪式感,永远不会过时呢~”(turtle绘图代码)

导语 “我想和你在一起虚度时光&#xff0c;坐看云卷云舒&#xff0c;花开花落” 所有文章完整的素材源码都在&#x1f447;&#x1f447; 粉丝白嫖源码福利&#xff0c;请移步至CSDN社区或文末公众hao即可免费。 又快到了一年小长假的时候啦&#xff0c; 单身狗的你们还好嘛…

如何有效使用渲染农场?防止渲染出错的7个方法!

如何使用渲染农场&#xff1f;又如何有效地使用渲染农场&#xff0c;使用云渲染农场时出错怎么办&#xff1f; 众所周知我们可以在任意的笔记本或者终端PC上面来创作 3ds Max 场景&#xff0c;但是实际渲染是这样吗&#xff1f;其实不然&#xff0c;这其中的差距不是一星半点&…

在 iOS 16 中用 SwiftUI Charts 创建一个折线图

前言 苹果在 WWDC 2022 上推出了 SwiftUI 图表&#xff0c;这使得在 SwiftUI 视图中创建图表变得异常简单。图表是以丰富的格式呈现可视化数据的一种很好的方式&#xff0c;而且易于理解。本文展示了如何用比以前从头开始创建同样的折线图少得多的代码轻松创建折线图。此外&am…

Spring Security环境搭建

Spring Security环境搭建 Spring BootSpring Security 认证&#xff1a;判断用户是否是用户合法用户的过程授权&#xff1a;判断系统用户可以访问或访问哪些权限资源 环境搭建 创建springBoot项目并导入springsecurity相关的依赖。 <dependencies><dependency>…

翻转课堂,让传统的以教为中心变成以学中心

翻转教室的故事起源于2007年&#xff0c;美国科罗拉多州洛矶山林地公园高中 (Woodland Park High School)的化学老师Jon Bergmann 和Aaron Sams&#xff0c;为了解决同学的缺课&#xff0c;先将预录好的课程上传到YouTube网站&#xff0c;让学生自行上网浏览学习。 他们发现学…

YOLO物体检测系列1.经典方法概述及评价指标体现

1. 深度学习经典检测方法&#xff1a; two-stage(两阶段)&#xff1a; Faster-rcnn Mask-RCNN系列 one-stage(单阶段)&#xff1a;Yolo系列 两阶段&#xff1a;一阶段实现RPN候选区域预选 二阶段基于候选区域再进行检测回归分类任务 单阶段&#xff1a;一个CNN卷积网络实现检测…

Ficus: 一款 markdown 编辑管理软件

Ficus Ficus 是一款 markdown 文档的编辑管理软件&#xff0c;由 ggG 团队开发。 Ficus 释义为“榕树”&#xff0c;榕树具有“冠盖如伞、一木成林“的特点。这也恰是本款软件想要为用户提供的核心服务&#xff1a;让用户的 md 文档可以像一棵榕树一样被浏览和编辑&#xff0…

EasyExcel动态头导出

前言 这段时间的项目中需要导出动态表格。 根据所选的参数导出对应的字段内容 下图所示选择下面几个tab页就需要导出对应的表头字段 下面为具体实现的效果。表头样式可以通过EasyExcel 提供的方法自定义。 具体实现 主要是通过 传入 exportItem 这个条件来决定导出的事项…

GCM与CCM的的规格和加解密过程

CCM CCM&#xff08;Counter with CBC-MAC&#xff09;是一种基于对称加密算法的认证加密&#xff08;Authenticated Encryption&#xff09;模式&#xff0c;结合了CBC-MAC&#xff08;Cipher Block Chaining Message Authentication Code&#xff09;用于消息认证和CTR&…

沃通TSA可信时间戳服务,保障电子数据法律效力

在全球信息化的大趋势下&#xff0c;以计算机及其网络为依托的电子数据&#xff0c;在证明案件事实的过程中起着越来越重要的作用&#xff0c;而可信时间戳已成为确立电子数据法律效力的重要技术之一。沃通TSA可信时间戳服务&#xff0c;提供具有法律效力的第三方可信时间戳认证…

android10 关闭默认输入法的“更正建议”

1. 场景 使用系统默认的输入法&#xff0c;在进行输入时&#xff0c;在输入法上方&#xff0c;会显示更正建议列表&#xff0c;同时会干扰我们的输入内容&#xff1a;会自动补全到输入框&#xff0c;而且删除不掉&#xff0c;甚至越删越多&#xff0c;非常讨厌。 如下&#x…

Spring IOC之对象的创建方式、策略及销毁时机和生命周期且获取方式

目录 一、对象的创建方式 1. 使用构造方法 2. 使用工厂类方法 3. 使用工厂类的静态方法 二、对象的创建策略 1. 单例策略 2. 多例策略 三、对象的销毁时机 四、生命周期方法 1. 定义生命周期方法 2. 配置生命周期方法 3. 测试 五、获取Bean对象的方式 1. 通过id/…

学习ZLmediaKit流媒体服务器时候遇到的问题

照zlmediakit的源码 自己复制了一份 然后有的地方编译不过修改了部分 测试的时候发现有两个问题 第一是 ffmpeg的ffplay 能播放 vlc不能播放 第二个问题是directProxy设置为0的时候 推流的时候 然后用ffplay播放 只有音频没有视频 查了好久终于解决这个问题 第一个…

pytest 自动化框架搭建-生成一个报告(alluer)

简单的case跑通了&#xff0c;尝试生成报告 1、使用allure-pytest 安装pip3 install allure-pytest 2、使用--alluredir../allure-results 如下我是直接在pytest.ini文件中使用命令 如下生成文件夹和json格式的文件 二、生成allure报告 1、安装allure 我是使用的命令直接…

字节超全学习流程图流出,100天涨薪10k,从功能测试到自动化测试...

今年年初&#xff0c;由于经济压力让我下定决心进阶自动化测试&#xff0c;已经24的我做了3年功能测试&#xff0c;坐标广州薪资定格在8k&#xff0c;可能是生活过的太安逸&#xff0c;觉得8000的工资也够了。 但是生活总是多变的&#xff0c;女朋友的突然怀孕&#xff0c;让我…

thinkphp6(tp6)初步小尝试(记录一下)

thinkphp6&#xff08;tp6&#xff09;初步小尝试&#xff08;记录一下&#xff09; 一、服务器环境二、创建tp6项目三、配置apache四、创建应用五、各应用入口六、简单模板 一、服务器环境 操作系统&#xff1a;ubuntu-22.04.2-live-server-amd64集成xampp(Apache MariaDB …