97 lines
3.0 KiB
Bash
97 lines
3.0 KiB
Bash
|
|
#/bin/bash
|
|||
|
|
# ---------------------------------------------------------
|
|||
|
|
# 配置数据生成工具
|
|||
|
|
# @author whjing2011@gmail.com
|
|||
|
|
# ---------------------------------------------------------
|
|||
|
|
|
|||
|
|
if [ "" == "$ROOT" ]; then
|
|||
|
|
if [ -f ../dev.sh ]; then
|
|||
|
|
../dev.sh $@
|
|||
|
|
exit 0
|
|||
|
|
else
|
|||
|
|
echo -e "\e[91m>>\e[0;0m 此脚本必须通过tools/dev.sh调用才能正常工作"
|
|||
|
|
exit 1
|
|||
|
|
fi
|
|||
|
|
fi
|
|||
|
|
|
|||
|
|
if [ -f $ROOT/tools/temp_gen_data/gen_data.sh ]; then
|
|||
|
|
source $ROOT/tool/temp_gen_data/gen_data.sh
|
|||
|
|
fi
|
|||
|
|
|
|||
|
|
DOC[gen_data]="生成目标数据配置文件"
|
|||
|
|
fun_gen_data(){
|
|||
|
|
cd ${ROOT}/tools/gen_data/
|
|||
|
|
fun_option $@
|
|||
|
|
echo "输入信息===>$1, $option"
|
|||
|
|
$ERL -noshell -pa "${ROOT}/tools/ebin" -pa "./ebin" -eval "make:all(),gen_data:gen($1,$option)" -s c q
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
DOC[gen_xml]="生成数据文件 XML"
|
|||
|
|
fun_gen_xml(){
|
|||
|
|
cd ${ROOT}/tools/gen_data/
|
|||
|
|
mkdir -p template
|
|||
|
|
fun_option $@
|
|||
|
|
$ERL -noshell -pa "${ROOT}/tools/ebin" -pa "${ROOT}/tools/gen_data/ebin" -eval "make:all(), gen_xml:gen($1,$option)" -s c q
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
DOC[gen_data_cfg]="生成新数据文件gen_data/cfg/*.erl"
|
|||
|
|
fun_gen_data_cfg(){
|
|||
|
|
cd ${ROOT}/tools/gen_data/
|
|||
|
|
if [ "$1" = "" ]; then
|
|||
|
|
[[ ! -f ./env_cfg.erl ]] && cp -f tpl/env_cfg.erl . || echo "env_cfg.erl配置数据已生成"
|
|||
|
|
fun_option $@
|
|||
|
|
$ERL -noshell -pa "${ROOT}/tools/gen_data/ebin" -eval "make:all(), gen_data_file:gen_cfg($1,$option)" -s c q
|
|||
|
|
|
|||
|
|
else
|
|||
|
|
fun_option $@
|
|||
|
|
$ERL -noshell -pa "${ROOT}/tools/gen_data/ebin" -eval "make:all(), gen_data_file:gen_cfg($1,$option)" -s c q
|
|||
|
|
fi
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
## 长参数处理
|
|||
|
|
## --lang=cn --encoding=unicode --srv_path=xxx --cli_path=xxx --php_path=xxx --data_dir=xxx --proc_num=1 --mod=all
|
|||
|
|
## -l cn -e unicode -s xxx -c xxx -p xxx -d xxx -n1 -mall
|
|||
|
|
fun_option(){
|
|||
|
|
mkdir -p ebin out
|
|||
|
|
TEMP=`getopt -o l:e:d:s:c:p:n:m: --long lang:,encoding:,data_dir:,srv_path:,cli_path:,php_path:,proc_num:,mod: -- "$@" 2>/dev/null`
|
|||
|
|
eval set -- "$TEMP"
|
|||
|
|
option="[{author,<<\"$AUTHOR\">>}"
|
|||
|
|
while true :
|
|||
|
|
do
|
|||
|
|
[ -z "$1" ] && break;
|
|||
|
|
arg=$1
|
|||
|
|
shift
|
|||
|
|
echo "option===>$arg"
|
|||
|
|
case "$arg" in
|
|||
|
|
-l|--lang)
|
|||
|
|
option=$option",{lang,$1}"
|
|||
|
|
shift;;
|
|||
|
|
-e|--encoding)
|
|||
|
|
option=$option",{encoding,$1}"
|
|||
|
|
shift;;
|
|||
|
|
-m|--mod)
|
|||
|
|
option=$option",{mod,$1}"
|
|||
|
|
shift;;
|
|||
|
|
-n|--proc_num)
|
|||
|
|
option=$option",{proc_num,$1}"
|
|||
|
|
shift;;
|
|||
|
|
-d|--data_dir)
|
|||
|
|
option=$option",{data_dir,\"$1\"}"
|
|||
|
|
shift;;
|
|||
|
|
-s|--srv_path)
|
|||
|
|
option=$option",{srv_path,\"$1\"}"
|
|||
|
|
shift;;
|
|||
|
|
-c|--cli_path)
|
|||
|
|
option=$option",{cli_path,\"$1\"}"
|
|||
|
|
shift;;
|
|||
|
|
-p|--php_path)
|
|||
|
|
option=$option",{php_path,\"$1\"}"
|
|||
|
|
shift;;
|
|||
|
|
*)
|
|||
|
|
;;
|
|||
|
|
esac
|
|||
|
|
done
|
|||
|
|
option=$option"]"
|
|||
|
|
echo "参数信息===>$option"
|
|||
|
|
}
|