shell脚本学习3-流程控制

??shell和其他编程语言一样,同样具有流程控制功能,也能够实现for,while,switch等流程控制语句。具体情形如下:

  1. if-else
    命令格式如下
        if condition1
        then
            command1
            command2
        elif condition2
        then 
            command3
        else
            command4
        fi

举例如下:

    if [ ‘ps -ef | grep -c "ssh"‘ -gt 1 ]
    then
        echo "true"
    else
        echo "false"
    fi
  1. for循环
    命令格式如下:
    for var in item1 item2 item2
    do
        command1
        command2
    done

举例如下:

    for var in $@
    do
        echo $var
    done
  1. while语句
    命令格式如下:
    while condition
    do
        command
    done

如果没有添加condition条件则会处于无限循环状态。
举例如下:

    a=1
    while [ $a - lt 5 ]
    do
        echo $a
        let "a++"
    done
  1. case语句(对应其他编程语言中的switch)
    命令格式如下:
    case 值 in
    模式1)
        command1
        command2
        ;;  #用来防止进入其他模式代码
    模式2|模式3)  #模式2或模式3
        command3
        command4
        ;;
    *)     #用来匹配任何模式
        command5
        ;;
    esac

举例如下:

    echo ‘输入数字‘
    read a
    case $a in
    1|2|3|4|5)
        echo ‘输入的值是:‘${a}
        ;;
    *)
        echo ‘退出‘
        ;;
    esac
  1. break和continue语句
    这两个语句的左右和在其他编程语言中的作用是一样的这里就不再赘述了!

shell脚本学习3-流程控制

上一篇:Linux下制作rpm包工具fpm


下一篇:进程间通信