• 007-流程控制 if 语句


    流程控制 if 语句
    
    if [ 条件判断式 ] ; then
        程序
    fi
    
    if [ 条件判断式 ]
        then
            程序
    fi
    
    
    
    
    脚本示例:
    [root@zabbix lianxi]# cat 001.sh 
    #!/bin/bash
    
    #rate=$(df -h | grep mapper | awk '{print $5}' | cut -d "%" -f 1)
    rate=`df -h | grep mapper | awk '{print $5}' | cut -d "%" -f 1`
    
    if [ $rate -ge 80 ] ; then
        echo "根分区要满了"
    fi
    
    
    
    
    
    [root@zabbix lianxi]# cat 002.sh 
    #!/bin/bash
    
    #备份mysql数据库.备份目录
    
    #ntpdate asia.pool.ntp.org &> /dev/null
    #同步系统时间
    
    date=`date +%y%m%d`
    
    size=`du -sh /etc`
    
    mysql_back() {
        echo "Date:$date" > /tmp/dbbak/dbinfo.txt
        echo "Size:$size" >> /tmp/dbbak/dbinfo.txt
        cd /tmp/dbbak
        tar -zcf etc-$date.tar.gz /etc dbinfo.txt &> /dev/null
        rm -rf /tmp/dbbak/dbinfo.txt
    }
    
    if [ -d /tmp/dbbak ] ; then
        mysql_back
    else
        mkdir /tmp/dbbak
        mysql_back
    fi
    
    
    
    
    
    
    
    [root@zabbix lianxi]# cat 003.sh 
    #!/bin/bash
    
    #判断apache是否启动
    
    port=`nmap -sT 192.168.12.174 | grep tcp | grep http | awk '{print $2}'`
    
    if [ $port == "open" ] ; then
        echo "`date` apache 正在运行" >> /tmp/autostart-acc.log
    else
        /usr/sbin/httpd -k start &> /dev/null
        echo "`date` apache 已启动" >> /tmp/autostart-acc.log
    fi
    
    
    
    
    
    
    
    #!/bin/bash
    
    read -p "请输入一个文件名:" file
    
    if [ -z $file ] ; then
        echo "错误,请输入一个文件名"
        exit 1
    elif [ ! -e $file ] ; then
        echo "你输入的不是一个文件"
        exit 2
    elif [ -f $file ] ; then
        echo "$file 是一个普通文件"
    elif [ -d $file ] ; then
        echo "$file 是一个目录"
    else 
        echo "$file 是一个其它文件"
    fi
    
    
    
    [root@zabbix lianxi]# ./004.sh 
    请输入一个文件名:
    错误,请输入一个文件名
    [root@zabbix lianxi]# echo $?
    1
    [root@zabbix lianxi]# ./004.sh 
    请输入一个文件名:sadf
    你输入的不是一个文件
    [root@zabbix lianxi]# echo $?
    2
    [root@zabbix lianxi]# ./004.sh 
    请输入一个文件名:/root
    /root 是一个目录
  • 相关阅读:
    C#开发微信公众平台-就这么简单(附Demo)
    Newtonsoft.Json高级用法
    C#获取文件的MD5码
    C#动态执行代码
    c#插件式开发
    利用反射执行代码
    yield关键字用法与解析(C# 参考)
    HttpContext.Current.Cache和HttpRuntime.Cache的区别,以及System.Runtime.Caching
    GZip压缩与解压缩
    Asp.Net 请求处理机制
  • 原文地址:https://www.cnblogs.com/xuefy/p/10981964.html
Copyright © 2020-2023  润新知