linux系统环境:包含centos,ubuntu等linux发行版
bash环境
简短的使用帮助动机 : 一般的程序都需要有帮助信息,在参数检查失败的时候,给出提示参考例子:filename=$0usage() { echo $filename -b -c 10 [ -i cluster|single ] echo -ne '-b \t 必选 意义 ;' echo -ne '-c num \t 必选 意义 ;' echo -ne '-i cluster|single \t 可选 意义 ;'}
输入参数的检查和赋值动机 : 一般的程序都需要对输入的参数进行有效性检查,出现问题的时候,给出帮助提示,正确的时候,使用输入对程序的变量进行赋值参考例子:arg_i=''arg_j=''while getopts 'i:j:' argdo case $arg in i) arg_i='$OPTARG' ;; j) arg_j='$OPTARG' ;; ?) { usage; exit 1; } ;; esacdone
环境变量的维护动机 : 某些程序需要修改环境,如进入其他目录,修改字符集变量等;比较优雅的处理方式是程序结束之后,对这些环境变量进行还原参考例子:# 保存环境变量old_lang=$LANGold_dir=`pwd`# 修改环境变量export.UTF-8cd /# 还原环境变量export LANG=${old_lang}cd ${old_dir}
输出和日志动机 : 为了日志的美观和统一性,可以统一定义日志输出的格式,如加上日志输出的时间参考例子(日志内容之前加上时间戳):ret_status='OK'echo -e `date '+%F %T'` ' cluster switch is ${ret_status} 'END