|
|
发表于 2015-10-30 15:57:42
|
显示全部楼层
- WAP(Dopra Linux) # cat getcustomize.sh
- #! /bin/sh
- #set CTCOM, Unicom or mobily spec parameters
- #include bin and spec word
- #include spec sn, common web username ssid password
- # 定制信息文件
- var_customize_file=/mnt/jffs2/customizepara.txt
- var_jffs2_customize_txt_file=/mnt/jffs2/customize.txt
- var_binword=""
- var_cfgword=""
- var_customizeinfo=""
- var_boardinfo_file="/mnt/jffs2/hw_boardinfo"
- #get feature word
- HW_Script_GetFtWord()
- {
- if [ -f $var_jffs2_customize_txt_file ];then
- read var_binword var_cfgword < $var_jffs2_customize_txt_file
- else
- while read line;
- do
- #obj_id=`echo $line | sed 's/\(.*\)"\(.*\)"\(.*\)"\(.*\)
- "\(.*\)/\2/g'`
- #脚本以"作为匹配,但是boardinfo中有些字段的值(例如snpass
- word)可以设置为"号,
- #因此不能以上面的模式匹配,改为根据obj.value将一个条目分?
- ?礁霾糠?
- #这种改法有一种限制obj.value不能为BinWord或者CfgWord的值
- ,否则会匹配出错,
- #第一部分为obj_id,第二部分为obj_value,obj_id只读因此可?
- 愿?萆厦娴哪J狡ヅ?
- obj_id_temp=`echo $line | sed 's/\(.*\)obj.value\(.*\)/\
- 1/g'`
- obj_id=`echo $obj_id_temp | sed 's/\(.*\)"\(.*\)"\(.*\)/
- \2/g'`
- if [ "0x0000001a" == $obj_id ];then
- obj_value=`echo $line | sed 's/\(.*\)"\(.*\)"\(.
- *\)"\(.*\)"\(.*\)/\4/g'`
- var_binword=$obj_value;
- elif [ "0x0000001b" == $obj_id ];then
- obj_value=`echo $line | sed 's/\(.*\)"\(.*\)"\(.
- *\)"\(.*\)"\(.*\)/\4/g'`
- var_cfgword=$obj_value;
- else
- continue
- fi
- done < $var_boardinfo_file
- fi
- return
- }
- # get customize info
- HW_Script_GetCustomizeInfo()
- {
- if [ ! -f "$var_customize_file" ]
- then
- echo "ERROR::no customize info exist!"
- return 1
- fi
- #sprint the spec content
- read var_customizeinfo < $var_customize_file
- if [ 0 -ne $? ]
- then
- echo "ERROR:Failed to spec info"
- return 1
- fi
- return
- }
- if [ 0 -ne $# ]; then
- echo "ERROR::input para is not right!";
- exit 1;
- else
- #
- HW_Script_GetFtWord
- [ ! $? == 0 ] && exit 1
- #
- HW_Script_GetCustomizeInfo
- [ ! $? == 0 ] && exit 1
- echo "$var_binword $var_cfgword $var_customizeinfo"
- echo "success!"
- exit 0
- fi
- WAP(Dopra Linux) #
复制代码 |
|