shell 脚本初探

2017-09-25  本文已影响0人  always_sun

最近在工作中用到了shell 脚本,学会了一些简单的语法。分享如下。

  1. select 的实现

    • 指定要选择的var , 用户输入
    • echo出来一些选项, 用户通过输入数字来match 对应的选项。

    实现一:

      select var in a b c ;
      do 
       break
      done
    
      echo "$var"
    

    实现二:

    # choose env or prd update
    echo "-----------------------------"
    echo "please choose environment:"
    echo "(0) development(www_v4)"
    echo "(1) production(www_v3)"
    echo "(2) exit"
    echo "-----------------------------"
    read input
    case $input in 
    0) 
      dir='www_v5' ;;
    1) 
      dir='www_v3' ;;
    2)
      exit 1 ;;
    esac 
    
    1. if 判断多个条件
    # confirm env
    # 从控制台读取sure的值
    read -p "sure to continue? (Y/n) " sure
     # -z 表示为空, -n 不为空
     # 两个条件之间可直接用||相连
     # 表示只有输入Y时程序才会继续
    if [ -z "$sure" ] || [ "$sure" != "Y" ]; then
      echo 'quit'
      exit 1
    # fi表示if判断的结尾 
    fi 
    
    1. 异常处理
    git checkout master-a
    # 如果"$?"为0表示没有错误
    if [ "$?" = "0" ]; then
        echo '' checkout     success"
    else 
        # 0 表示标准输入
        # 1 表示标准输出
        # 2 表示标准错误输出
        # >  和 1> 意思一样, 标准输出重定向
        # 下面的1>&2 表示标准错误输出 重定向到 错误输出,程序如果有错误,显示错误并退出(exit 1)
        echo "git checkout branch error" 1>&2
        exit 1
    fi
    

参考文档

1. Shell重定向

上一篇 下一篇

猜你喜欢

热点阅读