Shell编程之条件语句章
发表于:2025-02-23 作者:千家信息网编辑
千家信息网最后更新 2025年02月23日,条件测试:1、文件测试2、整数测试3、字符串与逻辑测试if语句:1、if单分支语句2、if双分支语句3、if多分支语句4、if嵌套语句test命令:测试特定的表达式 是否成立,当条件成立时,测试语句的
千家信息网最后更新 2025年02月23日Shell编程之条件语句章
条件测试:
1、文件测试
2、整数测试
3、字符串与逻辑测试
if语句:
1、if单分支语句
2、if双分支语句
3、if多分支语句
4、if嵌套语句
test命令:
测试特定的表达式 是否成立,当条件成立时,测试语句的返回值为0,否则为其他数值。
格式1:test 条件表达式格式2:[ 条件表达式 ] //注意有空格
文件测试:
格式:[ 操作符 文件或目录 ]
常用的测试操作符:
1、-d:测试是否为目录(Directory)2、-e:测试目录或文件是否存在(Exist)3、-f:测试是否为文件(File)4、-r:测试当前用户是否有权限读取(Read)5、-w:测试当前用户是否有权限写入(Write)6、-x:测试当前用户是否有权限执行(eXcute)
举例说明:
方法一:test -d /etc/sysconfig(测试etc目录下是否有sysconfig这个文件或者目录存在) echo $?(进行条件判断,如果由此文件输出结果为0值)方法二:[ -d /etc/sysconfig ] echo $?(进行条件判断,如果无此文件输出结果为非0值,就是1)
整数值比较:
格式:[ 整数1 操作符 整数2 ]
常用的测试操作符:
1、-eq:等于(Equal)2、-ne:不等于(Not Equal)3、-gt:大于(Greater Than)4、-lt:小于(Lesser Than)5、-le:小于或等于(Lesser or Equal)6、-ge:大于或等于(Greater or Equal)
Demo1 :
目的:查看目录下是否有我们需要的文件,若没有则直接创建。具体操作如下:
[root@localhost ~]# ! test -e /etc/ssc && touch /etc/ssc(查看在etc目录有是否有ssc文件,如果没有直接在此目录下创建)[root@localhost ~]# cd /etc(验证:进入etc目录下)[root@localhost etc]# ls(查看详细信息,此时可以找到我们创建的sscw文件)
字符串比较:
格式1:[ 字符串1 = 字符串2 ] [ 字符串1 ! = 字符串2 ]格式2:[ -z 字符串]
常用的测试i操作符:
1、=:字符串内容相同2、!=:字符串内容不同,!表示相反的意思3、-z:字符串内容为空
逻辑测试:
格式1:[ 表达式1 ] 操作符 [ 表达式2 ] ...格式2:命令1 操作符 命令2 ...
常用的测试操作符:
1、-a或&&:逻辑与,"而且"的意思2、-o或||:逻辑或,"或者"的意思3、!:逻辑否
1、单分支结构:
2、双分支结构:
3、多分支结构:
if语句应用示例:
1.单分支if语句
2.双分支if语句:
判断目标主机是否存活,显示检测结果
3.多分支if语句:
判断分数范围,分出优秀、合格、不合格三挡
Demo2(判断成绩):
使用单分支实现:
vim source.sh#!/bin/bashread -p "请输入整数" srcif [ $src -le 50 ] then echo "数字太小"fichmod +x source.sh./source.sh
使用双分支实现:(进入创建的执行文件中进行修改)
vim source.sh#!/bin.bashread -p "请输入整数" srcif [ $src -le 50 ] then echo "数字太小" else echo "数字太大"fi
使用多分支实现:(进入创建的执行文件中进行修改)
vim source.sh#!/bin.bashread -p "请输入整数" srcif [ $src -ge 85 ]&& [ $src -le 100 ] then echo "$src成绩优秀"elif [ $src -ge 70 ] && [ $src -le 84] then echo " $src成绩合格" else echo "成绩不合格"fi
Demo3:
实验环境:进行跑步比赛,10秒内进入决赛,输入性别后,分别提示进入男子组还是女子组,使用多重判断,嵌套if实现
具体在执行文件中输入内容如下图:
测试
文件
分支
语句
字符
字符串
目录
操作符
格式
条件
整数
表达式
逻辑
输入
内容
常用
成绩
命令
意思
数字
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
港航领域数据库案例
网络安全的英文倡议书
fl数据库
软件开发学习机构排名
中小型网商网络安全及对策
安永网络安全咨询好吗
智慧城市o2o数据库
数据库有哪些数据安全性限制
西安软件公司软件开发
什么是数据库的主键和候选码
工程项目软件开发公司
数据库引擎干嘛的
服务器插上声卡咋没声音
哈尔滨网络安全的项目
计算机网络技术可以做5G吗
网络安全橘皮书指的是什么
买个香港服务器安装Ubuntu
阜阳计算机网络技术代码
手机软件开发工商家
数据库的兼容
南京环保软件开发销售公司
上海博科软件开发
软件开发学习机构排名
网络安全关键技术阐述
三丰云服务器免费用哪个好
通用云服务器
数据库系统的安全措施
动易数据库配置文件是哪个
运满满网络安全审查是什么
网络安全厂商普