Shell编程之条件语句章
发表于:2025-12-01 作者:千家信息网编辑
千家信息网最后更新 2025年12月01日,条件测试:1、文件测试2、整数测试3、字符串与逻辑测试if语句:1、if单分支语句2、if双分支语句3、if多分支语句4、if嵌套语句test命令:测试特定的表达式 是否成立,当条件成立时,测试语句的
千家信息网最后更新 2025年12月01日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 "成绩不合格"fiDemo3:
实验环境:进行跑步比赛,10秒内进入决赛,输入性别后,分别提示进入男子组还是女子组,使用多重判断,嵌套if实现
具体在执行文件中输入内容如下图:
测试
文件
分支
语句
字符
字符串
目录
操作符
格式
条件
整数
表达式
逻辑
输入
内容
常用
成绩
命令
意思
数字
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
更改服务器管理器安装路径
网络安全平台愿景
不履行网络安全保护责任主体
罗村网络安全哪家强
手机vpn服务器设置
基于小数据库调用西门子plc
it软件开发技术培训
如何搭建发包服务器
网络安全靶场贵州
世界级网络安全公司
数据库创建角色与用户
盈实互联网科技王磊
常用的数据库和数据库技术
网络安全宣传怎么进基层
电大2022数据库应用技术
从数据库获取全部用户记录
数据库如何快速将两行数据合并
益阳末笙网络技术有限公司
plsql数据库文件保存
谷歌服务器连接不上手机怎么办
我的网络安全观
sql怎么把数据库导出来
科技企业不做互联网推广
etl更新数据库表
adguard去广告的服务器
国家网络安全基础设施
呼局软件开发岗面试
北京飞机票软件开发
军用软件开发趋势
网络技术专业与物联网