千家信息网

Shell脚本——条件语句

发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,条件测试1、文件测试2、整数值比较3、字符串与逻辑测试·if语句:单分支的if语句双分支的if语句多分枝的if语句·1、文件测试文件测试是指的是根据给定的路径名称,判断对应的是文件还是目录,或者判断文
千家信息网最后更新 2026年11月02日Shell脚本——条件语句

条件测试

1、文件测试
2、整数值比较
3、字符串与逻辑测试

·

if语句:
单分支的if语句
双分支的if语句
多分枝的if语句

·

1、文件测试

文件测试是指的是根据给定的路径名称,判断对应的是文件还是目录,或者判断文件是否可读、可写、可执行等。

基本格式

test 条件表达式 或者 [ 条件表达式 ]

文件的常见操作选项如下:

选项描述
-d测试是否为目录(Directory)
-e测试目录或文件是否存在(Exist)
-f测试是否为文件(File)
-r测试当前用户是否有权限读取(Read)
-w测试当前用户是否有权限写入(Write)
-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)

字符串比较

格式1:[ 字符串1 = 字符串2 ]            [ 字符串1 ! = 字符串2 ]格式2:[ -z 字符串]

常用操作选项

1、=:第一个字符串与第二个字符串相同2、!=:第一个字符串与第二个字符串不相同,其或中"!"符号取反3、-z:检查字符串是否为空,对于未定义或赋予空值的变量将视为空串

逻辑测试

格式1:[ 表达式1 ] 操作符 [ 表达式2 ] ...格式2:命令1 操作符 命令2 ...

常用操作选项

1、-a或&&:逻辑与,"而且"的意思2、-o或||:逻辑或,"或者"的意思3、!:逻辑否,表示"不"的意思

if语句

单分支结构

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

双分支结构

if 条件测试操作then   命令序列1then   命令序列2fi

多分枝结构

if 条件测试操作then   命令序列1elif 条件性测试操作2then   命令序列2else   命令序列3fi
测试 字符 字符串 条件 命令 格式 文件 序列 语句 逻辑 分支 目录 表达式 常用 意思 操作符 权限 结构 相同 分枝 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 科技和互联网公司 互联网科技的 智网互联网科技 易通互联网络科技有限公司 互联网科技类展会 成都仁贤领冠互联网科技有限公司 济南和联互联网科技有限公司 广州恒生互联网科技有限 特约风豹互联网科技为什么扣费 华中科技大学互联网的牛人 深圳无忧互联网科技 江苏互联网智能科技软件 互联网相关科技技术 上海创道互联网络科技有限公司 卡尔迅互联网科技有限公司 山东大美朱楼互联网科技有限公司 上海同邻互联网科技有限公司规模 互联网高科技行业有哪些企业 青岛互联网科技园 颐高云石互联网科技 深圳市人人互联网科技有限公司 新华互联网科技学院 互联网金融科技委员会 美国互联网前沿科技 互联网科技公司的市场部门 互联网经济与金融科技 乌苏新华互联网科技做什么的 风投北京互联网科技 互联网科技包装股 小牛互联网科技有限公司地址
0