if条件简单语法

时间:2023-02-02 11:25:58

  if语句是实际工作中最重要最常用的语句。

if条件语法:

单分支结构

  if [ 条件 ]

    then

      指令

  fi

  或

  if [ 条件 ];then

    指令

  fi

if 单分支条件中文编程形象语法:

  如果 [ 你有房 ]

    那么

      我就嫁给你

  果如

前文的文件条件表达式[ -f”$file” ]&& echo 1 就相当于下面的if语句:

if [ -f”$file” ];then

         echo 1

fi

双分支结构:

双分支结构:

语法:

if [ 条件 ]

         then

                   指令集1

else

                指令集2

fi

if双分支中文编程语法形象描述:

如果 [ 你漂亮 ]

  那么

    我就娶你

  否则

    Good bye!

果如

提示:

前文的文件条件表达式 [ -f”$file” ]&& echo 1 ||echo 0

相当于双分支的 if [ -f”$file” ];then echo 1;else echo 0;fi

多分支结构:

语法:

if 条件1

  then

      指令1

elif 条件2

   then

       指令2

else

       指令3

fi

--------------------------------多个elif--------------------------------

if 条件

  then

      指令

elif 条件

  then

       指令

elif 条件

  then

        指令

……

else

        指令

fi

多分支if语句中文编程语法形象描述:

如果 [ 你有房 ]

  那么

    我就嫁你

或者如果 [ 你爸是局长 ]

  那么

    我就嫁你

或者如果 [ 你很有上进心 ]

  那么

    我们可以先谈男女朋友

否则

  Good bye!

果如

提示:

1、结尾的else后面没有then。

2、注意多分支elif的写法elif条件;then,不要落下了then。

---------------------------------------------------华丽的分割线------------------------------------------------

例如:开发shell脚本判断系统剩余内存的大小,并且加入系统定时任务1分钟执行一次检查,如果低于100M就邮件报警给管理员。(由于测试,把系统内存阀值调制900M)

获取系统内存大小

free –m|grep buffers\/|awk ‘{print $NF}’

free –m|grep buffers/|awk ‘{print $NF}'

free –m|awk ‘NR==3 {print $NF}’

配置邮件

参考前文:https://www.cnblogs.com/su-root/p/10092469.html

③编写脚本

#!/bin/sh
cur_free=`free -m|awk 'NR==3 {print $NF}'`
chars="当前系统内存$cur_free不够用,邮件提醒管理员中......"
if [ $cur_free -lt 900 ]
 then
  echo `date +%y-%m-%d_%H:%M:%S`  $chars >>/tmp/buffer.log
  echo $chars|mail -s "系统警告" 1147076062@qq.com
fi

if条件简单语法

定时任务 

[root@lamp01 scripts]# crontab -e
crontab: installing new crontab
[root@lamp01 scripts]# crontab -l
########linux ncjk free -m########
* * * * * /bin/sh /server/scripts/jknc.sh >/dev/null 2>&1
[root@lamp01 scripts]# 

if条件简单语法