Shell编程中的条件语句有哪些

发布时间:2020-06-06 21:25:19 作者:Leah
来源:亿速云 阅读:256

Linux Shell编程中的条件语句有哪些?针对这个问题,今天小编总结这篇有关条件语句的文章,希望能帮助更多想解决这个问题的朋友找到更加简单易行的办法。

条件测试

IF语句

条件测试操作

test命令
格式1: test 条件表达式
格式2: [ 条件表达式 ]      //至少应有一个空格
文件测试
[ 操作符 文件或目录 ]
常用的测试操作符
[root@localhost ~]# [ -d /media/cdrom ]
[root@localhost ~]# echo $?
0                                             //返回0表示条件成立
[root@localhost ~]# [ -d /media/cdrom/Server ]
[root@localhost ~]# echo $?
1                                             //返回1表示条件不成立
[root@localhost ~]# [ -d /media/cdrom ] && echo "YES"     //&&逻辑与,“而且”的意思
YES
整数值比较
[ 整数1 操作符 整数2]
常用的测试操作符
[root@localhost ~]# who |wc -l
7
[root@localhost ~]# [ $(who |wc -1) -gt 5] && echo "Too many."   //用户数是否>5
Too many.
[root@localhost ~]# [ $(who |wc -1) -ge 10 ] && echo">= 10."      //用户数是否>=10
[root@localhost ~]# FreeCC=$(free -m | grep "Mem:”| awk '{print $6}`)
[root@localhost ~]# [ $FreeCC -It 1024 ] && echo ${FreeCC}MB        //空闲内存是否< 1024MB  
275MB
字符串比较
常用的测试操作符
[root@localhost ~]# echo $LANG            //测试当前语言环境
zh_ CN.UTF-8
[root@localhost ~]# [ $LANG != "en.US" ] && echo "Not en.US"
Not en.US
[root@localhost ~]# read -p“是否覆盖现有文件(yes/no) ?”ACK    //测试读入的字符串是否为yes
是否覆盖现有文件(yes/no) ? yes
[root@localhost ~]# [ $ACK = "yes" ] && echo "覆盖"
覆盖
逻辑测试
格式1:[ 表达式1 ] 操作符号 [ 表达式2 ]...
格式2:命令1 操作符 命令2...
常用的测试操作符
[root@localhost ~]#[ -dletc ] && [-r /etc] && echo “You can open it“
[root@localhost~]#[ -d/etc ] II [-d /home] && echo “ok"

if语句的分支结构

单分支结构
if 条件测试操作    
  then  命令序列     
fi                                
单分支if语句
if  条件测试操作
  then  命令序列1
  else  命令序列2
fi
双分支if语句
root@localhost ~]# vim test02.sh
#!/bin/bash
ping -c 3 -i 0.2 -W 3 $1 &> /dev/null
if [ $? -eq 0 ]
then                                  //判断ping命令的检测结果,分别给出不同的提示
  echo "Host $1 is up."
else
  echo "Host $1 is down."
fi
多分支结构
if 条件测试操作1
  then 命令序列1
elif 条件测试操作2
  then 命令序列2
else
  命令序列3
fi
多分支if语句

推荐阅读:
  1. shell编程之条件语句
  2. shell编程之条件语句——if与case

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

shell linux 条件语句

上一篇:android菜单创建的两种方式和菜单项添加图标

下一篇:如何搭建Redis群集

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》