shell脚本----条件判断语句

news2025/1/23 7:10:39

文章目录

  • 一、条件测试
    • 1.1 文件测试和整数测试
      • 文件测试
      • 整数值比较
    • 1.2字符串测试和逻辑测试
      • 字符串测试:
      • 逻辑测试
  • 二、if语句
  • 三、case语句

一、条件测试

1.1 文件测试和整数测试

文件测试

test命令
测试表达是是否成立,若成立则返回0,否则返回其他的数
用法一:test 条件表达式
用法二:[ 条件表达式 ]

选项含义
-e测试目录或者文件是否存在
-d测试是否为目录
-f测试是否为文件
-r测试当前用户是否有读的权限
-w测试当前用户是否有写的权限
-x测试当前用户是否有执行的权限

在这里插入图片描述

整数值比较

格式:[ 整数1 操作符 整数2 ]
在shell脚本中,以下的比较运算符只能用于比较整数
常用的测试操作符:

选项含义
-eq等于
-ne不等于
-gt大于
-lt小于
-ge大于等于
-le小于等于

在这里插入图片描述

1.2字符串测试和逻辑测试

字符串测试:

相较于上面的比较大小也可以使用接下来的符号来比较非整数的大小

操作符含义
“==”等于
“!=”不等于
“>”大于
“<”小于
“>=”大于或等于
“<=”小于或等于

在这里插入图片描述

逻辑测试

常用的测试操作符:

-a或&&: 逻辑与,“而且”的意思
-o或||: 逻辑或,“或者”的意思
!:逻辑否,”否定或取反“的意思

&& 的两边的结果都要是1才能正确的运行
||的两边只要有一个是1就可以正常的运行

在这里插入图片描述

二、if语句

2.1if单分支语句

在这里插入图片描述

我想要查看opt目录下是否有abc.txt的文件,用单分支语句来完成

在这里插入图片描述

在这里插入图片描述

2.2if双分支语句

在这里插入图片描述

我想要查询一个数是否是整数,用双分支结构来表示

在这里插入图片描述

在这里插入图片描述

2.3if多分支语句

在这里插入图片描述

在这里插入图片描述

现在做一个能记录跑步时时间,并且对男生和女生进行分组

在这里插入图片描述

在这里插入图片描述

三、case语句

在这里插入图片描述

在这里插入图片描述

通过case来实现对防火墙状态的改变

在这里插入图片描述

在这里插入图片描述

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

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

相关文章

手把手教你JAVA如何连接MYSQL-mysql-connector-j-8.0.32.jar

第一步&#xff1a;下载mysql驱动包 1、mysql官网&#xff1a;https://dev.mysql.com/downloads/connector/j/ 下载Connector/J &#xff08;JAVA使用&#xff09;如下图所示&#xff1a; 2、此时会进入下载页面&#xff0c;无需登录&#xff0c;直接下载即可&#xff0c;如下…

让Python自动测试更得心应手——认识一下神奇的pytest测试框架

目录&#xff1a;导读 前言 安装pytest pytest测试用例设计原则 pytest执行用例规则 1、执行某个目录下所有的用例 2、单独执行某个py文件 3、执行某个py文件里的某个函数 4、-s 参数 Pycharm运行Pytest 结语 前言 Python在测试圈的应用非常广泛&#xff0c;特别是…

人工智能中(Pytorch)框架下模型训练效果的提升方法

大家好&#xff0c;我是微学AI&#xff0c;今天给大家介绍一下人工智能中(Pytorch)框架下模型训练效果的提升方法。随着深度学习技术的快速发展&#xff0c;越来越多的应用场景需要建立复杂的、高精度的深度学习模型。为了实现这些目标&#xff0c;必须采用一系列复杂的技术来提…

Zynq-7000、FMQL45T900的GPIO控制(四)---linux应用层配置GPIO输入控制

上文中详细阐述了对应原理图MIO/EMIO的编号&#xff0c;怎么计算获取linux下gpio的编号 本文涉及C代码上传&#xff0c;下载地址 Zynq-7000、FMQL45T900的GPIO控制c语言代码资源-CSDN文库 本文详细记录一下针对获取到gpio的编号&#xff0c;进行配置输入模式&#xff0c;并进…

Jenkins + Gitlab 实现项目自动化构建及部署

通俗来讲就是本地项目 push 到 gitlab 后, Jenkins 能够识别到项目的更新并自动构建部署;  本文以实际操作的方式来表述详细配置过程及避开配置 Jenkins 时的坑. 默认电脑已经安装了虚拟机, 默认gitlab 上已经有了你想要部署的项目, 部署了 maven 和 jdk 并配置了环境变量!!! …

H5拉新充场app系统源码

拉新充场是一种基于移动互联网技术的营销手段&#xff0c;通常由企业或商家使用推广软件来实现。拉新是指通过各种方式引导潜在用户注册成为企业的会员或客户&#xff0c;充场则是指通过向已有用户提供优惠券、折扣等福利来鼓励其进行消费或充值。 这种营销手段可以帮助企业…

告别脚本小子系列丨JAVA安全(7)——反序列化利用链(中)

0x01 前言 距离上一次更新JAVA安全的系列文章已经过去一段时间了&#xff0c;在上一篇文章中介绍了反序列化利用链基本知识&#xff0c;并阐述了Transform链的基本知识。Transform链并不是一条完整的利用链&#xff0c;只是CommonsCollections利用链中的一部分。当然并不是所有…

对制造企业来说,该怎么样去选择合适的CRM系统?

随着互联网和数字化技术的发展&#xff0c;CRM(Customer Relationship Management&#xff0c;客户关系管理)系统正越来越被企业所重视。随之而来的是市场上各种不同类型、功能和价格的CRM系统。对制造企业而言&#xff0c;选择合适的CRM系统可以使企业更好地管理客户关系&…

01 【Sass的安装使用】

1.介绍 1.1 CSS预处理技术&#xff0c;及种类介绍 什么是css预处理技术 CSS 预处理器定义了一种新的语言&#xff0c;其基本思想是&#xff0c;用一种专门的编程语言&#xff0c;为 CSS 增加了一些编程的特性&#xff0c;将 CSS 作为目标生成文件&#xff0c;然后开发者就只…

【Makefile】笔记

正点原子Linux驱动13.4.1节&#xff0c;通用Makefile疑难点解释 聊聊 SOBJS : $(patsubst %, obj/%, $(SFILENDIR:.S.o)) 的作用 聊聊变量替换语法 在 Makefile 中&#xff0c;变量替换语法可以用来对变量的值进行修改和转换。有以下几种不同的变量替换语法&#xff1a; $(va…

二分类结局变量Logistic回归临床模型预测(一)——介绍

本节讲的是二分类结局变量的临床模型预测&#xff0c;与之前讲的Cox回归不同&#xff0c;https://lijingxian19961016.blog.csdn.net/article/details/124088364https://lijingxian19961016.blog.csdn.net/article/details/124088364https://lijingxian19961016.blog.csdn.net/…

C++类与对象this指针

文章目录 前言一&#xff0c;类1.类的引入2.类的定义3.类的作用域4.类的访问限定符及封装封装访问限定符面试题 二&#xff0c;this指针1.this指针定义2.this指针的特性 前言 从此篇往后&#xff0c;开始了C的类和对象的篇章&#xff0c;嗯就说这么多 一&#xff0c;类 1.类的…

Microsoft Forms的應用(文行版)

Microsoft Forms 功能是發起大眾投票及反饋數據的軟件。 首先要開啟Microsoft Forms 先要取得Microsoft Teams 的應用程式&#xff0c;在下載Microsoft Teams 後&#xff0c;可在最左邊的工具列選擇《應用程式》&#xff0c;然後從中開啟Microsoft Forms 就可以了。 看到Micr…

Java如何生成随机数?要不要了解一下

目录 前言一、Random类介绍二、Random类生成随机数1.生成随机数2.nextInt()方法 三、使用场景四、官方提示总结 前言 我们在学习 Java 基础时就知道可以生成随机数&#xff0c;可以为我们枯燥的学习增加那么一丢丢的乐趣。本文就来介绍 Java 随机数。 一、Random类介绍 在 Ja…

C++篇----构造函数和析构函数

在很多时候&#xff0c;当写了初始化&#xff0c;动态开辟的&#xff0c;需要写销毁函数&#xff0c;写了销毁函数之后&#xff0c;但是却忘记了调用这些函数&#xff0c;忘记调用初始化函数还好&#xff0c;编译器会报错&#xff0c;但是如果是忘记调用销毁函数&#xff0c;那…

社科院与美国杜兰大学金融管理硕士项目——选择在职读研是正确的吗

这个世界上&#xff0c;根本没有正确的选择。我们只不过要努力奋斗&#xff0c;使当初的选择变得正确。最近有咨询项目的同学总是在纠结是否要在职读研&#xff0c;在职读研是否是一条正确的路。当我们为此纠结时&#xff0c;其实只有一条路&#xff0c;那就是选择向前走。往前…

有我和另一个00后卷王后,公司老油条们破防了吗?

今年软件测试行业的内卷现象越来越明显&#xff0c;比2022年疫情那会更甚&#xff0c;越来越多的人涌入这个行业&#xff0c;而想要获得更好的待遇和机会&#xff0c;不断提升自己的技能栈成为了测试老油条不得不面对的问题。 不论是哪个级别的测试工程师&#xff0c;面试官都…

络达开发---- AB1562x左右两侧同一按钮不同功能

开发平台&#xff1a;AB1562X SDK版本&#xff1a;V1.5.2 说明&#xff1a;AB1562X支持TWS&#xff0c;左右两个的耳机的按钮在硬件上是芯片的同一个IO口&#xff1b;那如何实现左右按键对应动作&#xff21;&#xff0c;右侧按钮对应动作B呢&#xff1f;即左右两侧同一按钮的…

【创建一个网页,实现猜数字游戏】

要求如下 逻辑如下&#xff1a; 一个button按钮第二行中&#xff0c;打印“请…数字” 然后一个 输入文本框 然后一个 按钮第三行 打印 “已经猜的次数” 然后打印 猜的次数结果显示 猜大了 猜小了 猜对了 在script中 获取button按钮、输入的数据、记录count的值&#xff…

vue3——咸鱼仔

vue3——咸鱼仔 vue3——咸鱼仔P1.前言 【00:45】P2.创建项目 【02:09】P3.代码格式化 【01:37】P4.commit规范 【01:57】P5.强制commit 【02:41】P6.强制代码规范 【01:03】P7.按需导入elementplus 【02:58】P8.vue3.2新特性 【01:42】P9.初始化项目 【02:47】P10.登录页面静态…