shell脚本之if语句的使用

shell编程之条件语句
一.条件测试
条件测试命令:
test 条件表达式 或者 [ 条件表达式 ]
1.文件测试
-d:测试是否为目录
-e:测试文件或目录是否存在
-f:测试是否为文件
-r:测试是否有读权限
-w:测试是否有写权限
-x:测试是否有执行权限
例如:

[root@ns1 ~]# [ -d /media/cdrom ]
[root@ns1 ~]# echo $?
1

返回值为0,表示存在,不为0,则表示不存在
也可以结合逻辑测试一起来使用
例如:

[root@ns1 ~]# mkdir -p /media/cdrom
[root@ns1 ~]# [ -d /media/cdrom ] && echo YES
YES

当文件夹存在时,输出YES
2.整数值比较
-eq:a等于b
-ne:a不等于b
-gt:a大于b
-lt:a小于b
-le:a小于等于b
-ge:a大于等于
3.字符串比较
==:字符串相等
!=:字符串不相等
-z:检查字符串是否为空
4.逻辑测试
&&:逻辑与,表示并且
||:逻辑或,表示或者
!:逻辑否,表示不
例如:输出Linux内核版本号第1位和第2位,判断版本号

[root@ns1 ~]# mnum=$(uname -r|awk -F. '{print $1}')   //给mnum赋值,等于内核号第一位
[root@ns1 ~]# snum=$(uname -r|awk -F. '{print $2}')   //给mnum赋值,等于内核号第二位
[root@ns1 ~]# [ $munm -eq3 ] && [ $snum -lt 20 ] && echo 符合   //比较,都符合输出符合
符合

二.if语句
1.单分支的if语句
if 条件测试
then
命令序列
fi

在这里插入图片描述

[root@ns1 ~]# ./jjsc.sh 
not en.u2.双分支if语句
	if 条件测试
	then
		命令序列1
	else
		命令序列2
	fi
s

在这里插入图片描述

[root@ns1 ~]# ./jjsc.sh 
		not en.us

3.多分支if语句
if 条件测试1
then
命令序列1
elif 条件测试2
then
命令序列2
else
命令序列3
fi
在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值