最近在工作中用到了shell 脚本,学会了一些简单的语法。分享如下。
-
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
- 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
- 异常处理
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
网友评论