shell脚本if结构条件句知识与实践
程序员文章站
2022-07-09 18:58:23
if结构条件句知识与实践 (一)if条件句单双分支语法 (二)if条件句多分支语句 1、语句的结构 2、实例:判断目录是否存在 3、实例:判断服务器内存大小 开发shell脚本判断内存是否充足,如果小于100,提示不足,如果大于100提示充足。 [root@centos6 kvm3 script ......
七、if结构条件句知识与实践
(一)if条件句单双分支语法
1、单分支 if 条件 then 指令 fi 2、双分支 if 条件 then 指令 else 指令集2 fi
(二)if条件句多分支语句
1、语句的结构
if 条件1 then 指令1 elif 条件2 then 指令2 elif 条件3 then 指令3 else 指令4 fi
2、实例:判断目录是否存在
如果不存在目录/backup,则创建。 [root@centos6-kvm3 scripts]# cat 07-01.sh #!/bin/bash path="/backup" [ -d $path ] || mkdir $path -p if [ -d $path ] then :(冒号表示什么都不做) else mkdir $path -p fi if [ !-d $path] then mkdir $path -p fi [root@centos6-kvm3 scripts]#
3、实例:判断服务器内存大小
开发shell脚本判断内存是否充足,如果小于100,提示不足,如果大于100提示充足。 [root@centos6-kvm3 scripts]# cat 07-02.sh #!/bin/bash mem=`free -m | awk 'nr==3{print $nf}'` if [ $mem -lt 100 ] then echo "内存不充足!" else echo "内存充足!" fi [root@centos6-kvm3 scripts]#
4、实例:判断两个整数大小
[root@centos6-kvm3 scripts]# cat 07-03.sh #!/bin/bash read -p "请输入两个整数:" a b expr $a + $b + 1 &>/dev/null if [ $? -ne 0 ] then echo "请输入两个整数。" exit 0 fi if [ -z "$b" ] then echo "请输入两个整数。" exit 1 fi if [ $a -lt $b ] then echo "$a小于$b" elif [ $a -gt $b ] then echo "$a大于$b" else echo "$a等于$b" fi 如果使用传参方式: [$# -ne 2 ]判断参数是否为两个。
5、实例:打印一个安装菜单
[root@centos6-kvm3 scripts]# cat 07-04.sh #!/bin/bash cat <<eof 1.install lamp 2.install lnmp 3.exit eof read -p "请输入一个数字{1|2|3}:" n expr $n + 2 &>/dev/null if [ $? -ne 0 ] then echo "usage:$0{1|2|3}" exit 0 fi if [ $n -eq 1 ] then echo "install lamp" elif [ $n -eq 2 ] then echo "install lnmp" elif [ $n -eq 3 ] then echo "exit" else echo "usage:$0{1|2|3}" fi [root@centos6-kvm3 scripts]# 转自:https://www.cnblogs.com/cuiyongchao007/p/12798180.html