|
楼主 |
发表于 2018-3-25 21:04:16
|
显示全部楼层
这个是选择三网配置的脚本。一般用来选择电信 移动 连通 界面6 N) x h+ v$ t+ o2 C; `1 `; ]0 R6 X
-----------------------------* V! _* x1 a& A1 c/ Q
#! /bin/sh
4 y. u5 j% [# C5 F8 b" A$ ]+ k" `! p: w
# 输入参数变量
. [: K5 ]& E1 {2 Z9 Xvar_bin_ft_word=$(echo $1 | tr a-z A-Z)2 y+ E6 ~0 H9 h5 }- m- D! f% l
var_cfg_ft_word_init=$(echo $2 | tr a-z A-Z)
: w' E0 b0 ~4 Jvar_cfg_ft_word_en=$(echo $2 | tr a-z A-Z), m! r' o% g4 o" T# D6 b
var_ssid=$3
. v% W! v5 v* ?+ kvar_wpa=$43 h* x/ l) w& o/ I1 ?
var_input_para=$*0 X3 `( y" a, M3 U6 p7 N
var_is_HGU=1
3 |' A5 I: A2 F) r3 y! ?/ hvar_is_ENBG=0
$ i e/ v v/ g1 cvar_para_num=$#
" g6 \, H$ q0 v; D$ d" K/ N! Vvar_customize_telmex=/mnt/jffs2/TelmexCusomizePara4 l0 b+ ^$ n) I$ q
var_jffs2_specsn_file="/mnt/jffs2/customize_specsn" J- f& w! w4 S8 V$ X
3 \5 @. q- p6 ~: u# 全局的文件变量. p& `0 U% i& D: N# N
var_jffs2_boardinfo_file="/mnt/jffs2/hw_boardinfo"0 C& E/ M1 G2 W' [' e
var_boardinfo_bakfile="/mnt/jffs2/hw_boardinfo.bak"9 o7 n3 @( v2 H! [
var_jffs2_customize_txt_file="/mnt/jffs2/customize.txt"( d3 L3 J$ b( E4 l% h' i9 U+ Q
var_telnet_flag="/mnt/jffs2/ProductLineMode"
5 C- H- H# s8 evar_hw_hardinfo_feature="/mnt/jffs2/hw_hardinfo_feature"
% P- z# P* t9 p, U5 R7 Rvar_hw_hardinfo_feature_back="/mnt/jffs2/hw_hardinfo_feature.bak"4 g. a+ g' b2 r; y% I1 [4 b# F! W
. n' l& `2 ?8 V2 u# p2 d# 其它变量, _+ M2 W. e6 f& W5 R+ t7 D( x
var_pack_temp_dir=/bin/
* R3 t5 x, n: f5 Z+ s6 @rm -rf /var/notsaveboardinfo& \1 R8 L1 l1 j: \/ K3 ?1 V
! s; @- b9 q# g2 _#新增企业网防串货特性,会在配置特征字后添加_ENBG- z7 g6 J" v y6 U$ e" f% A x
var_cfg_ft_word_en=`echo $var_cfg_ft_word_init | sed 's/_ENBG$//g'`
+ r' ]1 F! H9 lif [ $var_cfg_ft_word_init != $var_cfg_ft_word_en ];then m- O3 E% @ c" n
var_is_ENBG=1( O v9 D2 h. v2 p$ L+ e" j
fi
- U u5 ]2 _% S( ] Q+ {! Y) X1 T. a6 A( U' }" v* k6 \
var_upcase_cfg_ft_word=$(echo $var_cfg_ft_word_en | tr '[a-z]' '[A-Z]')& g' ]& P U* A: X6 e i
var_BUCPEkeycfg=$(expr match "$var_upcase_cfg_ft_word" '.*\(BUCPE\).*')
- ~" g9 b9 r% l+ i3 q- N* C! P
4 z8 |! y! |; |9 V#判断配置特征字是否包含:字符,var_cfg_ft_word 和 var_cfgfileword JSCT:8X2X定制 var_cfg_ft_word=JSCT,cfgfileword=8X2X
; [# J3 T2 U0 ~3 c; J/ |$ v#将回显输入到空设备文件
# W, H+ p" i2 ]. e8 wecho $var_cfg_ft_word_en | grep : > /dev/null! \! S9 |, S0 x5 L( G5 Z, ?
if [ $? == 0 ]3 S; H+ `' ?& A) W7 d
then
% E7 x! q) R5 F& b- O: c) x var_cfg_ft_word=`echo $var_cfg_ft_word_en | tr a-z A-Z | cut -d : -f1 `
9 ~8 O8 a% m6 y4 \" \ var_typeword=`echo $var_cfg_ft_word_en | tr a-z A-Z | cut -d : -f2 `3 ^0 F. Y0 _6 P2 g4 Q3 b
var_bucpe=`echo $var_cfg_ft_word_en | tr a-z A-Z | cut -d : -f3 `
5 ]$ w6 O9 [8 u; felse
! |+ h- o0 G2 t9 a- d. d4 P var_cfg_ft_word=`echo $var_cfg_ft_word_en | tr a-z A-Z`
' }) H' p- i+ }3 ]3 l! s9 J) [& ~ var_typeword=""8 C) U9 _( y6 v* E
fi
: m" U1 V' C( ^. r/ e2 ~3 N; g( v$ _# Q* c7 ^. A) Y: f
if [ "$var_typeword" = "BUCPE" ] || [ "$var_cfg_ft_word_en" = "CHOOSE_BUCPE" ] ; then
) d; ^+ H8 V3 X7 G7 c% b& A9 W if [ -f $var_hw_hardinfo_feature ]
1 |1 q- U- H4 j; Q1 g then0 A- W8 G* I0 }
echo 'feature.name="HW_SSMP_FEATURE_GXBMONITOR" feature.enable="1" feature.attribute="0"' >> $var_hw_hardinfo_feature
B; p) E0 ^5 D. { else
# A9 @5 ]+ ~8 D9 u1 |8 S# Y echo 'feature.name="HW_SSMP_FEATURE_GXBMONITOR" feature.enable="1" feature.attribute="0"' > $var_hw_hardinfo_feature7 c6 l4 I" l; @' F( P) ?) ~* b
fi
/ v ?/ B* ]. s # v$ h) o R; I; F4 |
cp -rf $var_hw_hardinfo_feature $var_hw_hardinfo_feature_back0 A9 I$ o9 O+ c$ j: L
var_typeword=""
# x# m' ]+ H8 x5 `/ v7 Efi" Q2 v2 u. y. w( ^, X2 ^2 R
; t+ p' s: z9 a/ _ r5 f
if [ "$var_bucpe" = "BUCPE" ] || [ "$var_BUCPEkeycfg" = "BUCPE" ]; then
, q/ Q( H! \! e! c/ h% d+ z8 i- K if [ -f $var_hw_hardinfo_feature ]
: S8 n# B2 a1 K then- Q( A0 n" ^% ^* j( p
echo 'feature.name="HW_SSMP_FEATURE_GXBMONITOR" feature.enable="1" feature.attribute="0"' >> $var_hw_hardinfo_feature
+ X. ~0 H7 b: M. X- G0 b else
5 _# ]! h9 d! B/ n echo 'feature.name="HW_SSMP_FEATURE_GXBMONITOR" feature.enable="1" feature.attribute="0"' > $var_hw_hardinfo_feature
# Y7 Q( Q0 u' b& C' h: a fi
. N2 L) t. ^) H; ?5 _3 X
6 f" `# i4 a5 X! `& E( I, h7 ~' }8 ~ cp -rf $var_hw_hardinfo_feature $var_hw_hardinfo_feature_back1 X2 i0 g3 V% l3 b- c2 D
fi3 M9 ^# u) ~: C2 F
5 x. ? Y6 Z+ Evar_cfg_ft_word_save=`echo $var_cfg_ft_word_init | tr a-z A-Z`# A, W0 R: m' a" W8 [& D7 w# _
var_cfg_ft_word1=$var_cfg_ft_word
% _/ X3 C4 w8 y8 w- w4 X! v7 k0 e+ j
var_cfg_ft_word_choose=$(echo $(echo $var_cfg_ft_word | cut -b -7) | tr a-z A-Z)
; j" C, Q7 b% O' k' e6 N
- Y6 Z) G$ }$ x2 @9 @8 e' ^# bHW_Check_Boardinfo()
4 |3 E& }+ U2 F" a/ i7 i* W1 Q{2 i% m0 a2 y1 z) f; a
if [ -f $var_jffs2_boardinfo_file ]; then: e5 o8 x* [/ I
return 0;
, i$ J& Q- T) r! r6 l) I3 t3 w+ I) {, o else7 P5 h! x- H2 R) T
echo "ERROR::$var_jffs2_boardinfo_file is not exist!"
* C9 N1 d' j- w+ A. |: j return 1;
& M- N1 G0 f9 i fi2 r a- \) m& A( ?4 t
}
, j3 w9 p9 K" ~
: y" F! g7 k1 f3 V% m7 N8 P5 U) L# 通过cfgtool设置程序特征字和配置特征字,这个操作在装备资源校验完成后执行% H& f' ~! H7 {7 b
HW_Set_Feature_Word(); L1 `; y. |5 W3 D
{
* H" B+ R% m8 H" [; @% Z #程序特征字的ID为0x0000001a,配置特征字的ID为0x0000001b,
- ] U) N" z. S, Y# |$ S3 d( ^ #这个是跟DM的代码保持一致的,产品平台存在强耦合,不能随意更改2 _0 j( P' d8 J+ w9 D
9 e, e% ~+ N( q; {3 K1 ] #判断配置特征字是否以WIFI结尾,如果是则删除
; t3 T3 @& ~5 S6 S' J5 J# l$ y var_cfg_ft_word_temp=`echo "$var_cfg_ft_word" | sed 's/WIFI$//g'`+ L' _6 _6 ^2 R, T
if [ "$var_bin_ft_word" = "CMCC" ] && [ "$var_cfg_ft_word_temp" != "CMCC_RMS2" ] ; then0 t8 G1 s/ i- K* E% _# C K/ g
var_cfg_ft_word_cmcc="$var_cfg_ft_word_temp". N' H2 ]# g% Z- K
var_cfg_ft_word_temp=`echo "$var_cfg_ft_word_cmcc" | sed 's/2$//g'`( Y, i: b& _7 u
; k* Q; r' Y' l, {
fi
! ]7 B: @$ c' k# \7 N0 s6 L0 f/ V4 J9 c# r% _4 K, B: B
#如果是免预配置,电信定制为E8C E8C,联通定制为COMMON UNICOM2 W+ U' F- a4 t2 g6 U5 K
if [ "$var_cfg_ft_word_choose" = "CHOOSE_" ] ; then
& N' v6 g/ J6 g8 e5 s, D if [ "$var_bin_ft_word" = "E8C" ] ; then3 z% o9 c; h7 h/ k
var_cfg_ft_word_temp="E8C"
6 w- N. H( @5 o fi5 n' w- L9 u" p
0 W. K* v+ x* o* U: ~
if [ "$var_bin_ft_word" = "CMCC" ];then
' D' e2 t3 N; u c. K( ~0 m2 N8 ^ var_cfg_ft_word_temp="CMCC"
& J1 d. s9 c' u. v! {/ g) E/ y fi
) p; e* A/ Y+ v4 y
/ m2 a' w; e+ j( P3 z+ L# V if [ "$var_bin_ft_word" = "CMCC_RMS" ];then1 i) A1 l9 g8 @
var_cfg_ft_word_temp="CMCC_RMS"
4 \! @- F0 H8 z. h' c fi( b; t+ m" ?6 c" b" \+ v' J
9 A* I) y7 Z' p. I2 O$ o% O if [ "$var_bin_ft_word" = "BZTLF2" ];then1 ?- R+ H% B/ l1 z
var_cfg_ft_word_temp="BZTLF2"
* N' J* ]' y/ u2 ^" E' N fi% Z7 l9 g- a" U7 L% r2 G
/ e0 H/ g0 _' ]$ s if [ "$var_cfg_ft_word" = "CHOOSE_UNICOMBRI" ];then
2 n1 m* F4 c; h& s% U+ M5 l var_cfg_ft_word_temp="UNICOMBRI"
8 O6 W- k+ g! U/ F& a' d fi4 w6 `) @7 u8 e2 I4 t
fi
' c ] [" B+ ^. E) n( D9 K- N* U7 Q
: _- C7 o1 x. X, { if [ "$var_cfg_ft_word_temp" = "CMCC_RMS2" ] ; then
4 t: p1 i" {" ?' j7 G+ W7 Q var_cfg_ft_word_temp="CMCC_RMS"
' S5 i7 p; D$ _1 A fi) ]. x7 \5 u" q1 u
. I# I7 @0 q; Z8 {4 a; C1 ` #检查boardinfo是否存在
3 E8 v B" i- p$ I1 ^- z HW_Check_Boardinfo1 A N9 d/ Z7 B; Q
if [ ! $? == 0 ]) A& W* g* I; m+ y6 _& ?
then6 C# @0 W& n% j3 R
echo "ERROR::Failed to Check Boardinfo!"
, Q0 R* q& U* v6 ~! u5 H/ ] return 1
4 t# Y! @ W2 }/ E* A7 v& M) h- u fi
- A3 l/ ]1 n: \# f% e& _0 P( j% j+ e8 R" U# C+ l
echo $var_jffs2_boardinfo_file | xargs sed 's/obj.id = \"0x0000001a\" ; obj.value = \"[a-zA-Z0-9_]*\"/obj.id = \"0x0000001a\" ; obj.value = \"'$var_bin_ft_word'\"/g' -i
# Y5 x2 ?) e# x: w, U) Z) z6 Y* N2 P% n8 _
echo $var_jffs2_boardinfo_file | xargs sed 's/obj.id = \"0x0000001b\" ; obj.value = \"[a-zA-Z0-9_]*\"/obj.id = \"0x0000001b\" ; obj.value = \"'$var_cfg_ft_word_temp'\"/g' -i
2 Y1 \0 }2 ]7 v, Z+ ^5 f8 I: R# H ], S
#根据配置特征字后是否带_ENBG判断其是否为企业网ONT,企业网为@EN#Common&,其它运营商为@CN#Common&
$ \0 N, ] {9 k! J" j+ M if [ 1 == $var_is_ENBG ];then
& ^2 ]) k, l: E: U echo $var_jffs2_boardinfo_file | xargs sed 's/^obj.id = \"0x0000003a\".*$/obj.id = \"0x0000003a\" ; obj.value = \"\@EN\#Common\&\"/g' -i. } J- r& f+ j4 t$ ?/ v8 m
else( ~: ]9 Q# m+ o( m, Q4 _+ I
echo $var_jffs2_boardinfo_file | xargs sed 's/^obj.id = \"0x0000003a\".*$/obj.id = \"0x0000003a\" ; obj.value = \"\@CN\#Common\&\"/g' -i2 Q& T+ m" ?, P$ O" P- D
fi9 D4 @( \1 z* F" B5 y, V6 M
$ C+ ?" E* @. z! ?% q2 f! T3 `0 ^
#保存程序特征字和配置特征字到文件/mnt/jffs2/customize.txt,getcustomize.sh从这个文件中读取,为了保证boardinfo能够完全写入,需要放在最后面
6 | S* e3 F) ~+ l echo $var_bin_ft_word $var_cfg_ft_word_save > $var_jffs2_customize_txt_file
7 h* J$ q) D6 _}! {0 E$ t. c' W, u# W
?8 l5 u" M2 x7 ~
#设置typeword字段
7 I7 H S' b. W0 fHW_Customize_Set_CFGTypeFile()1 t, c7 Y/ U8 |% A4 X
{, ~8 U, S( t4 U7 [" X; C
#后面会进行检查,再次不检查boardinfo是否存在
2 C: x" S; Q u1 i, q2 x. n echo $var_jffs2_boardinfo_file | xargs sed 's/obj.id = \"0x00000035\" ; obj.value = \"[a-zA-Z0-9_]*\"/obj.id = \"0x00000035\" ; obj.value = \"'$1'\"/g' -i
" W" _5 k3 r1 n* E9 S. Z3 ]+ c return 0% e8 Z3 Q! A* t
}7 `- u) h9 U+ ` j7 c
' |: ]; n1 O+ W9 [. C#设置cfg fileword
; q' ] K# Y/ ~0 DHW_Set_CfgFile_Word()* G# [- h% |+ `/ h* X" }# J1 T
{2 G/ p$ N, {; w4 N1 S
if [ -z "$var_typeword" ]
+ Y s: i) e9 r& g then
. } ^2 K% o. |" w. g) j5 y HW_Customize_Set_CFGTypeFile ""
! T+ |2 N, _8 t# p+ Q #不带typeword,删去typeword文件(之前定制的typeword)+ ^7 s: z1 V3 n/ R# j0 e( `/ H
rm -f /mnt/jffs2/typeword
( Z7 k$ Z( R5 \ else( y$ v9 F/ O" [
HW_Customize_Set_CFGTypeFile "$var_typeword"
7 U% z3 Y0 ]' M& C fi
8 D E; q7 ?: u3 ^ return 0
( m& H$ s6 t( W$ ~$ x}$ y' T5 U( H/ M
( C, h! C% T# Y$ w/ K0 a6 h
# 参数检测- w" V( |. v* e. f( ]2 N
HW_Customize_Check_Arg()
: f* Z. p7 @6 t: z) K{- l; `% B4 C' d8 ~- M
if [ -z "$var_bin_ft_word" ] || [ -z "$var_cfg_ft_word" ]- ~" j7 }5 L: t7 V8 s
then
( \- \, L8 L2 n' S' T echo "ERROR::The binfeature word and cfgword should not be null!"
3 L1 a9 F2 K* S: C return 1; M7 ~! z/ F" I- b4 [3 K$ {
fi
5 z( l2 [; h6 d; C+ {7 |7 V
5 w3 Y( g0 n5 [: A C return 0
$ C( }# t# }, Z5 d9 t) O}" N% o* v! S" w( }5 R
0 v- ~6 x; M9 n# [9 A9 D$ w
# 如果是COMMON_WIFI ~COMMON定制,则将BinWord由COMMON_WIFI->COMMON,依然走定制流程* J/ {9 }4 V! W: g& I6 D$ {
# 如果CfgWord以wifi结尾,则去掉"wifi"字符串: @3 O% m3 l8 n5 ^& T- t& Q
HW_Change_Customize_Parameter()6 L0 h5 X8 x4 H+ f
{ M. W T5 P" x9 ?0 q5 m
if [ "$var_bin_ft_word" = "COMMON_WIFI" ] ; then F2 h5 z) I: K# y$ V" Z
{
2 S: P6 C" A0 ?0 c( f- l) g var_bin_ft_word="COMMON", y3 @& V, o9 y
}' q0 X1 |. ?% Z. A
fi1 C3 d' |% M. ]. _8 s) R
8 Q% F2 ?! l4 C% Z, f) ^
#判断配置特征字是否以WIFI结尾,如果是则删除
8 A0 W" H! e' ^- q0 [) w var_cfg_ft_word_temp=`echo "$var_cfg_ft_word" | sed 's/WIFI$//g'`2 J: Z* T7 a( K: A. r
if [ "$var_bin_ft_word" = "CMCC" ] && [ "$var_cfg_ft_word_temp" != "CMCC_RMS2" ] ; then$ U) ?) I. O; ^1 {. A3 a Q
var_cfg_ft_word_cmcc="$var_cfg_ft_word_temp"; `6 g1 Z5 E( r. f3 t( R
var_cfg_ft_word_temp=`echo "$var_cfg_ft_word_cmcc" | sed 's/2$//g'`
5 b; q* n4 {* @) v/ v4 S
: U2 b0 L G+ ]7 I8 B; h fi
2 o F3 G7 ], r
( _. t( _5 d( t6 T) t; t. E, Y' G
' H# Q# x$ Y, l shift 2 P" ?- T. L. |# t
8 ~# ^) p" l5 H9 `2 h' a6 T var_input_para="$var_bin_ft_word ""$var_cfg_ft_word_temp ""$*" c3 O8 o3 n! Q3 ?( V
6 \4 q7 B8 k K& G2 `" l4 c
return 0) ~$ \) B* A5 _- O; U3 h$ h# B, U
}! V8 _' \9 k, H5 j% Q
* G2 H' \7 R4 }& F7 |. [" w2 S; [8 `# 如果CfgWord中去掉_SIP或者_H248字符1 u3 c! v+ w: f0 }8 C- R+ \
HW_Change_Customize_ParameterForVspa()0 u8 F4 b. `" G! W' {" \
{* |' H% V9 N6 L
#如果配置特征字中没有_SIP或者_H248则直接返回,不显示1 e. |+ s, |, Y. f! _) }
echo $var_cfg_ft_word | grep -iE "_SIP|_H248" > /dev/null
1 P. t5 E) b% K if [ ! $? == 0 ]
/ l. `! C2 e/ m X6 G3 L8 w then
# i( d, p9 W4 G- R% |) q6 a return 0! A- e* F/ n0 J0 [
fi
5 e2 i A* _% u3 a2 d* J
b8 A7 l5 I9 q2 J/ E- | #删除配置特征字中去掉'_'后字符,并重新构造配置参数,作为Customize程序的参数
c1 A) Y/ t4 }* [% J9 O var_cfg_ft_word_temp=`echo "$var_cfg_ft_word" | sed 's/_.*//g'`6 L* @- k9 q: g A8 P0 v2 P
shift 2 #输入参数左移动2个
- f+ p" X5 W4 u, s9 b var_input_para="$var_bin_ft_word ""$var_cfg_ft_word_temp ""$*"7 l+ ?$ {( G# l% f
return 0! k! u+ o! C2 a5 r4 t, _. Y% w$ ]$ M
}: N& j+ K! j8 L. U
9 G0 M( f a; A/ Z8 x% D
#设置CHOOSE字段3 R" r/ C: @/ x5 i0 S @
HW_Customize_Set_Choose()9 W9 r) z0 L5 V" s# |2 h5 x: S8 ^' Q
{
9 f" ^4 W2 p0 S. {0 b& ~ #后面会进行检查,再次不检查boardinfo是否存在( q% G: G$ U. l, y. u6 L
echo $var_jffs2_boardinfo_file | xargs sed 's/obj.id = \"0x00000031\" ; obj.value = \"[a-zA-Z0-9_]*\"/obj.id = \"0x00000031\" ; obj.value = \"'$1'\"/g' -i# ]9 J0 k$ u a+ X7 e7 n& a
return 0. t6 ~. D; Z& f& w( s3 V5 }
}5 P( c4 S/ L% K
+ X b0 Y' u$ V7 N# m3 k( W( g
# 资源检测
3 n- w; u: Z. Y$ M8 {9 y4 uHW_Customize_Check_Resource()
3 L- G# c1 H% E8 I) w$ l! m2 o/ a{* a) O+ k/ |5 r
#HGU需要关注免预配置定制,需要涉及CHOOSE_WORD字段修改,SFU则可以直接传入 c. b% {0 Q& x: m% @9 [2 ]8 t
if [ "$var_cfg_ft_word_choose" = "CHOOSE_" ] \) {7 g- \( K+ a" \' S8 x4 L
|| [ "$var_cfg_ft_word" = "UNICOM" ] \1 @6 S4 O6 H. H) D/ c3 d; i
|| [ "$var_cfg_ft_word" = "UNICOM_BUCPE" ] \
6 Y/ v ?4 A R; w4 C1 E9 t/ @0 e || [ "$var_cfg_ft_word" = "UNICOMBRIDGE" ] \
5 j( q% U' G# p, |. U5 U' c || [ "$var_cfg_ft_word" = "BZTLF2" ] \& O! O6 ` Q$ _. G7 F- m; ]
|| [ "$var_cfg_ft_word" = "BZTLF2WIFI" ] \
6 }' t' i( x5 O" r || [ "$var_cfg_ft_word" = "CMCC" ] \
) Y9 y, W! N0 ~7 V6 M7 `$ G || [ "$var_cfg_ft_word" = "CMCC_BUCPE" ] \
R' c6 \3 X* v* G || [ "$var_cfg_ft_word" = "CMCCWIFI" ] \7 D. R/ V3 Y. U/ N5 Q
|| [ "$var_cfg_ft_word" = "CMCC_RMS" ] \
2 \ R0 W& k4 L5 n8 x || [ "$var_cfg_ft_word" = "CMCC_RMS2" ] \5 B& M8 ]$ ^; s: ?, o; `* O- I p p
|| [ "$var_cfg_ft_word" = "CMCC_RMS2WIFI" ] \
( r: e, R+ R2 {' ?* P! S0 Q || [ "$var_cfg_ft_word" = "CMCC_RMSWIFI" ] \
% [4 s+ B+ j; T" r || [ "$var_cfg_ft_word" = "CMCC_RMSBRIDGE" ]; then9 R' E& ]4 e! F q ]
shift 2
) p2 W) A4 y1 |& r if [ "$var_cfg_ft_word_choose" = "CHOOSE_" ]; then; Y5 I' ~+ |+ b" V5 Y
var_input_para="$var_bin_ft_word ""$var_cfg_ft_word1 ""$*"
$ R- a! l) W( ^9 f B* v* I( x elif [ "$var_cfg_ft_word" = "CMCCWIFI" ]; then8 j4 [( H7 b0 l6 U: c r! R9 i
var_input_para="$var_bin_ft_word ""CHOOSE_CMCC ""$*" 4 e: z5 a, a0 Y; |) u
elif [ "$var_cfg_ft_word" = "CMCC_RMS2WIFI" ]; then# K* x r, ~7 s
var_input_para="$var_bin_ft_word ""CHOOSE_CMCC_RMS2 ""$*"; U, X7 P+ f/ Y( k, r" l
elif [ "$var_cfg_ft_word" = "CMCC_RMSWIFI" ]; then
$ m/ i# f! t& M- V$ ` var_input_para="$var_bin_ft_word ""CHOOSE_CMCC_RMS ""$*"
& h3 d3 @0 b- }: L4 v+ e4 b elif [ "$var_cfg_ft_word" = "BZTLF2WIFI" ]; then4 p4 h9 ]+ _ d4 x
var_input_para="$var_bin_ft_word ""CHOOSE_BZTLF2 ""$*"( C: R8 {( Q6 F5 Z5 @
else
' i! J0 t( y. @: r) ?; k2 e if [ $var_is_HGU -eq 1 ] ; then
% \& I$ ~& M' u3 }4 O5 A var_input_para="$var_bin_ft_word ""CHOOSE_$var_cfg_ft_word1 ""$*"- ?, f( g+ W, P' Y/ N" i0 [
else5 M# D+ f; u, ^9 P/ J
var_input_para="$var_bin_ft_word ""$var_cfg_ft_word1 ""$*"
4 K; d# P2 h' P! D fi( U5 P7 V; l$ ^* U. N l4 ]) b
fi. b% z b- Z: _! p
fi/ [& H' ?6 S! X" B* F2 v
6 J4 E5 u( t2 F7 `" t' H" g #现在TELMEX只支持12个参数(customize.sh后面的),格式如下:7 L2 y, Z9 b& x/ \. a8 O% P
#customize.sh COMMON TELMEX SSID WEP_KEY PPPoE_user PPPoE_pwd TR069_user TR069_pwd WEB_pwd CLI_user CLI_pwd WPA_pwd
1 {: V9 M: |" D2 @2 x8 O if [ $var_cfg_ft_word == "TELMEX" ]
7 e' l, a4 Z/ S' _4 v7 l+ m. K0 ` then3 q' ]2 P* s- P% K! g$ `& |
#对于之前的已经用5个参数定制的整机,返工场景(重新定制,要删除该文件,否则定制检查会失败)
3 s# i1 \, t7 u. N# \0 l if [ -f $var_customize_telmex ]; _+ X" ]. N( s1 d* s& }+ O
then+ u/ I+ F( n) `; T
rm -rf $var_customize_telmex0 D, g- y& c( h* A
fi. g3 _9 h6 o; w9 C$ v
#只支持12个参数(除customize.sh以外的其他参数)
7 g/ L1 V0 {' k7 J Y. p if [ 12 -ne $var_para_num ]4 l b" N3 Q4 o7 j( B; K
then2 O( T* p. O% Z% y# U
echo "ERROR::input para must be COMMON TELMEX SSID WEP_KEY PPPoE_user PPPoE_pwd TR069_user TR069_pwd WEB_pwd CLI_user CLI_pwd WPA_pwd !"
|' n6 j+ g; N# m0 ] return 1* v9 Z% S n9 H8 u3 _* w8 H6 p9 l
fi
+ T7 ]4 P$ J+ \$ H0 n fi
4 s7 W9 X) J) H! C3 |% C' ^9 N1 H
, I2 H; Z% o& D- w # 调用Customize进程进行装备资源的校验, 把文件暂时写入typeword 暂时写入/mnt/jffs2/typeword 文件。 如果不通过文件传递,通过argv 传递" U/ k: K' [1 q
# 需要函数扩展的函数有十个左右,且在Customize APP 中需要扩展解析该字段。
: p% H( X" p, m if [ -f /mnt/jffs2/typeword ]; then
3 S6 x' ]. q- Z) F cp -f /mnt/jffs2/typeword /mnt/jffs2/typeword_bak
4 R+ N* M2 N. Y+ s: Y, ] fi
( g+ A5 f, v9 Y& N3 ? l* B3 U( D echo $var_typeword > /mnt/jffs2/typeword3 W- b4 U/ W. \
2 v- z) I! h. S$ t$ J9 f" Z# [) F
#检测是是否在生产过程中写入specsn文件,重新返工需要将此文件删除。$ S2 i/ \/ s& `7 s: w2 F
if [ -f $var_jffs2_specsn_file ]
7 M! g$ N- P5 j- d- {$ m$ u) | then
) Q6 b' @% F; u+ G rm -rf $var_jffs2_specsn_file; |# B: R, |8 b; V4 Z+ q
fi* L+ z4 H, p8 E9 ?" b) y
0 V$ B4 C- v( B6 B; d( N+ K if [ ! -f /var/customize_flag ] ;then
( R: ~) Q7 T* v! }, u" [ echo > /var/customize_flag$ R5 O5 ]- Y( Z& `. B9 U
fi
# ?9 d/ c. A" A. }* j Customize $var_input_para
2 S$ e( w% Y c0 i) X) C: t" }- X7 E
var_result=$?
7 n. Z f& `$ [0 i! q; G- C' X+ i: r6 ] l$ I4 P
if [ 0 -eq $var_result ]: \0 r& z9 \- l. ~" `
then
+ {/ ?, U1 \! t) n #写boardinfo和文件1 T' q, @* b( ?7 p/ |' t
HW_Set_CfgFile_Word
S" w+ k6 X( {7 m5 o0 G rm -f /mnt/jffs2/typeword_bak
2 }( P0 M+ }. n" {3 J3 W+ j6 q/ L else+ Y7 X, H# k1 B" \
#定制失败, 如果存在备份文件,还原备份0 ]* y/ ?& ~: H3 E' V
if [ -f /mnt/jffs2/typeword_bak ]; then
0 B4 D! @/ v% Y2 L. o# L mv -f /mnt/jffs2/typeword_bak /mnt/jffs2/typeword
5 m* ]' Q1 ]0 z4 p+ `/ o3 d. a7 U0 r else' g7 O7 w1 L4 B: f# W
#第一次定制失败6 V1 d2 e3 g- b K' i6 {! X; l" o
rm -f /mnt/jffs2/typeword
% t1 L, K+ D2 B fi ; r6 I" C1 U1 |% |* V% k
7 }; }2 |9 M- a3 q; V; Y3 b
if [ -f /mnt/jffs2/customizepara.txt ] ; then5 |7 P* O, Q6 E/ q
rm -f /mnt/jffs2/customizepara.txt7 i, s; f! C8 H/ I4 _/ F
fi" N' i& T1 V0 V4 o; P p7 v* Z- V- ]8 H
# e3 ^2 W6 ~8 Y" Z3 r fi& A$ d! Y/ T5 A1 i$ J O5 v) ~/ \# x
* S; O7 q( s2 O2 W, B
return 0; b8 R: J* d5 l8 _8 T T# A5 V5 x& K
}
0 X5 G& F! x( C4 ^8 i1 G; |( e5 o) J; M2 ^. z
HW_Customize_Check_PCCWMacCheck()- R5 x) h1 e' S
{5 R9 V0 a$ Q8 K) M$ i
# 如果是PCCW,需要进行WLAN MAC的校验4 `9 h7 K2 ]& N1 W y2 c% z: K! Z
if [ "$var_cfg_ft_word" = "PCCW3MAC" ] || [ "$var_cfg_ft_word" = "PCCW3MACWIFI" ] \1 Q1 v! z0 j5 B& [4 A5 Z* a
|| [ "$var_cfg_ft_word" = "PCCW4MAC" ] || [ "$var_cfg_ft_word" = "PCCW4MACWIFI" ], e; U2 b0 [. [
then" N1 U% r0 G0 c6 b! Z% r
pccwmaccheck $var_input_para
\4 O' j, k8 q' j) C" a% d9 Q var_pccwresult=$?
4 |( Q0 r' V& X) H3 E' Y& a else, A, W# w1 |& ?3 o) c& t# o- p
var_pccwresult=0
9 g D6 h" y6 w& g* U fi% B' S6 u4 C* M! Q
; a4 L: ~2 s, b, d5 u' Q ~0 I' H return 0* D, o5 ^+ _1 D& }1 d7 [% [% m
}$ s5 E) z" o( ?' b
" J$ a: D3 {1 {; C h: K
#定制处理$ T0 ?" j; p, L' C- I+ Z0 `
HW_Customize_Delete_File()
7 m! A8 L% B; e, ?$ |7 _{, i+ }1 J. R; ]/ j/ i
rm -f $var_telnet_flag
9 T/ w% i! I" w2 o. z rm -f $var_boardinfo_bakfile6 E& B1 J& |+ B( a, _, o" B
rm -f /mnt/jffs2/smooth_finish' t: t8 }8 K* v* u9 F: b0 h" \
return 0
: f6 I; x% r4 G8 D# {! z* _}2 w, t& l, Q$ v6 c5 t5 y: V3 o. C6 g
1 Q: u3 }; p/ }( v$ I! [& L# 结果输出
. Q1 w- T: I l4 P# V8 n5 ], jHW_Customize_Print_Result()
5 e5 H; g$ B; Y C- V9 q{$ o5 ?" d/ @8 J! N5 h
# 根据不同的执行结果,返回不同的错误内容% y7 {2 J. D7 r2 O8 S5 x
if [ 0 -eq $var_result ]" s# e; W% z- _
then
& t, v! L- D! J |& t #pccw3mac pccw4mac定制中需进行wlanmac的校验
: g4 R' z% Q. X8 Z) k9 Q) M HW_Customize_Check_PCCWMacCheck $var_input_para
3 A0 l& V9 }1 g$ G* R9 T if [ 0 -eq $var_pccwresult ]
9 [ C# t0 u4 c `: L4 y( W then! d/ p+ a/ n; k& H, K$ ~
HW_Set_Feature_Word0 Z9 r- S5 l+ ]* O
if [ ! $? == 0 ]" D# ], j$ G( @9 e1 ?) ?" ^
then
9 c3 D( X: O( Q echo "ERROR::Failed to set Feature Word!"4 a: w3 F: O: v# f m
return 19 K2 J# c3 ^9 R, H
fi2 F7 D7 x% o' Q2 r, ^7 r& e
elif [ 1 -eq $var_pccwresult ]/ T& m4 u4 U; m$ n* g" j
then
0 P3 T, `, u, F& d echo "ERROR::input para number is not enough!"
" z/ d: ?5 }( w0 T3 W# ? return 1
+ U! N+ k) x6 ? elif [ 2 -eq $var_pccwresult ]0 y: N+ V3 v* p
then
3 l% u$ Y. M7 o/ p/ J8 U echo "ERROR::SSIDMAC fail!"
! w; k" H. ^9 i! o4 Y. O/ m/ K return 1( B7 K$ n- S, U! F+ e# U5 ?
else- Q( D4 X& ^6 u/ N
echo "ERROR::customize fail!"
1 j+ O/ Q. X5 h( k/ n return 1
$ u% F5 h j) I* O4 B) q, [ fi
5 ]$ ~' k% }) h4 N. ~9 ~2 L. p$ w return 0
8 ?: U% H' T& S9 i3 f elif [ 1 -eq $var_result ]% E8 T4 F$ R) A5 `4 t. P* j
then
& M3 n+ D7 H5 L' M+ X echo "ERROR::input para number is not enough!"" E+ E0 v; L# T: M) F% ?, ^1 R
return 1
" G8 F" o+ Z: ?& X, J elif [ 2 -eq $var_result ]
* ?. K' e( ^8 y8 h6 y$ g9 S7 c then
5 G+ ?* E& z- v R% |5 } echo "ERROR::Updateflag file is not existed!"
% x$ D1 s+ h- y return 1. G- S4 d0 y# s+ L' S' T9 X7 {
elif [ 3 -eq $var_result ]
/ x* j, w/ [' v9 K* I# P& Q& _% w then
0 A! v7 L8 |3 ?" c/ ?, w7 S# B echo "ERROR::config tar file is not existed!"; X+ P4 ]3 R0 t- o
return 1) s! y8 D# `3 E) Z [
elif [ 4 -eq $var_result ]9 z5 E' U+ s) h
then( {1 z: g- T5 I% z" j
echo "ERROR::Null pointer!!"8 }+ C* a( t( y! M
return 1
; R- r' s1 q- T( Q. b6 [ elif [ 5 -eq $var_result ]) ^2 K# P( K! r, S8 E$ |
then @- U" q+ B% `) J0 |9 p
echo "ERROR::XML parse fail!!"
+ ~7 O7 j$ L) ?7 D8 T% y return 13 h4 {/ L/ a$ G2 Q% U
elif [ 6 -eq $var_result ]6 G+ F& z# Z, j P. S V1 w( R
then/ Q9 S6 [- m5 x
echo "ERROR::XML get node or attribute fail!"4 Q4 a, [7 ?7 B$ b
return 1
& y/ x u3 f- K" P$ x( V elif [ 7 -eq $var_result ]
7 T4 h+ S2 I( p8 n then
9 H' k4 F1 X0 L3 k echo "ERROR::XML get relation node fail!"! M. S; Q V$ A8 x
return 1
! H" ?* k) H9 h( E* p2 y elif [ 8 -eq $var_result ], ^& W7 `, f$ a: G! X& C. l
then
7 ~8 m A, l+ F7 e- o" h# C# { echo "ERROR::Spec file is not existed!"
, a6 S$ W. J: [ return 1$ g$ D9 X2 u5 g8 q i3 Y# R1 q C
elif [ 9 -eq $var_result ]
8 b$ G' l: d( e7 c) M then
. @& i3 s3 C3 ?& j$ A9 U echo "ERROR::Set bin word fail!", r) M# l6 V# F6 ?5 r4 u3 X
return 18 M& @% `) b6 b
elif [ 10 -eq $var_result ]
, R9 p4 O% Y2 m) J5 | then
$ S; s: U& \3 L* d echo "ERROR::Set config word fail!"+ a& y7 x9 B( ?, L
return 1
$ p* }) U" Z x! t( {& y5 c0 i4 S elif [ 11 -eq $var_result ]8 u- @! Z- B1 a% h5 Q0 O7 O
then0 s: v4 P! S; ?: T6 Z- b* {) }" n
echo "ERROR::Uncompress tar fail!"7 i4 O* K& W5 T6 l) R* y1 A
return 1
9 C+ f- b; b# i; V0 b2 K3 o' Z8 t elif [ 12 -eq $var_result ]" A$ I8 k' Z6 ~5 x7 e
then
3 D$ n) q. Y0 \6 q' I echo "ERROR::Config file is not existed!". A3 }) L( c" {( L. M
return 12 l; u2 k$ T: G8 R2 R; @ T- e! G
elif [ 13 -eq $var_result ]$ t' O& _; p. J( `" K
then
+ n" u$ g4 F, W" D' T echo "ERROR::Recover file is ont existed!") L) p- ]$ P5 h5 f! n
return 12 p, O6 b1 [0 ]' g. c2 G
elif [ 14 -eq $var_result ]
& a) M3 C* l' F2 P$ ? |. ] then
$ E! ], u; l) n& Y- C1 j echo "ERROR::Run script fail!"$ f, O% c$ s! }$ W; h
return 1
' S% l3 w" Y" S: b elif [ 15 -eq $var_result ]+ i+ T" A x& J- S
then
+ f. q# C/ Y" t9 F F K echo "ERROR::Create new recover config file fail!"
* F1 d! `6 e* F% `: z return 1, N- o9 b' R. @& _0 k6 Q% V" l
elif [ 16 -eq $var_result ]
, E. @" C( S7 B0 r8 b* Y$ Q then8 f; W( G! G" d' Z( z' F% n7 d% a
echo "ERROR::Create old recover config file fail!"7 o) O- ~! B: b5 s
return 11 i3 M! h, e6 j0 j, x/ X7 a
elif [ 17 -eq $var_result ]' i: R$ ~9 L! ~$ ]7 P
then# d8 h7 q& k, m5 i& }. i, Q" B
echo "ERROR::Copy spec default ctree fail!"
0 e5 x4 @- ], j+ s& V( a return 1
( }( D# t# X- b+ x* Z; s( Z% V elif [ 18 -eq $var_result ]
/ i) R3 u/ g. J0 ~/ T- D7 k then3 ]" C6 g& {/ F2 Y; s; F, ?
echo "ERROR::Check Choose Res fail!"' ]& K9 m: q4 g( G
return 1
, P5 e; K/ A% J4 S$ w6 b elif [ 19 -eq $var_result ]( ^# V7 O# s! h
then
7 k- |$ s* L6 I' F. _4 Y# f echo "ERROR::Resolver customize file fail!"4 \' _6 M; C2 Q" a
return 1
* J: V/ U+ m9 u* Y3 B4 y. ` else
# x. ~3 B0 {* g- } echo "ERROR::customize fail!"
9 K. |' s/ c& _5 @% U return 1! m6 v( T. f; K8 x! W# l
fi8 I) Y! E$ n# D# g' z# a1 x: s) {
7 h8 u8 F, P1 X return 06 Z$ e) @+ _( _# P8 K
}1 o& y5 M* J Z' X6 R9 V! X
. g e. K) ?$ W8 t5 u" ~. ?#HGU才支持免预配置,在此做判断
' U9 w0 I0 J1 `2 O g1 AHW_Customize_CheckIsHGU()0 U4 m: U' e) F; A4 x7 W& Q
{/ ?& |: k4 `( N% _: [! d
cat /proc/wap_proc/pd_static_attr | grep -w pdt_type | grep HGU > /dev/null
0 V0 f7 _. V: ]/ z7 b/ g6 o if [ $? -eq 0 ] ; then
4 ?5 n$ a& c$ O3 u6 N return 1
4 m U5 J, I/ i fi
% E& E) \! C4 I- o9 g4 g0 @: q% Z0 N3 a. m& g& V4 n3 c
return 0+ T1 ~/ \7 l# `( |! s
}
4 B8 }- z$ ]" v s2 |
% x# V4 ]5 S2 k5 V1 ^; L- K#Java进程占用CPU过高,导致定制超时
0 X5 U+ G$ ]/ S0 DHW_Customize_ReleaseResource()
( J6 S0 {/ h9 N{) @, T6 u' z0 `% w- \5 u5 q8 [4 D
procid="";
+ n4 R8 g4 b% _: e9 {! b9 w. Q ! U3 `1 u) k, |$ P4 W0 p! k
if [ -f /bin/osgi_proxy ] ; then6 F0 O. F: D m) U5 R* ?; y
echo > /var/kill_java4 \) d! b+ M8 c* Q' e3 c
5 Q" v n, I8 x! ^$ X
procid=`pidof procmonitor` ) S8 r# L2 Q, P: q: F
if [ "$procid" != "" ] ; then
- Z5 j/ T; T0 q2 M" U5 ?! a kill -15 $procid ; s, r7 l; W/ m2 Z0 L1 s* C
fi# l. B% ]( q; R( d: F: d) y9 j5 i W
# ~7 X0 i$ A. {. \- [
procid=`pidof osgi_proxy`
5 a; P2 \# b3 n7 a, S: N* c if [ "$procid" != "" ] ; then$ K9 }: s+ G2 b' w1 w5 i7 m
kill -9 $procid! x8 Q" Y$ b0 ?& G
fi
/ ?8 t6 _. ?2 N
* S: s5 v. b! F6 p3 E procid=`pidof java`4 k" F9 W: L, q" `1 S* x# L
if [ "$procid" != "" ] ; then
2 U9 @7 S; p$ q% h' X kill -9 $procid
9 Q2 L$ [' ?% }' F fi
2 N! N8 a. h a1 N1 R* g fi
( S+ U7 x9 m0 Q @6 Q% m$ P1 _- U}2 S8 Q9 D% x9 q8 k4 T) }
8 `2 o( x6 u# P4 h( Z
2 M5 L+ |' i! t+ y% j#echo /proc/pdt_proc/save_boardinfo to save boardinfo for add chooseid
9 d8 e4 U+ r2 {& Mecho "1" > /proc/pdt_proc/save_boardinfo3 D, s: G6 j( U9 S1 }5 K( k
; X) b& X9 S8 o; s7 i
#参数检测:至少应该包含BinWord&SpecWord# V8 b- x: p8 p
HW_Customize_Check_Arg
, |8 s: W7 r' O r) G[ ! $? == 0 ] && exit 13 q8 R0 |7 ^9 O6 K
$ G, q. e$ H% {# L
HW_Customize_ReleaseResource
+ ]5 T- ~8 C* ?6 V4 L: s2 W! N4 ]7 v
, o/ A6 I+ C" y#参数处理
( P3 `8 K$ f' P0 V& E3 D, DHW_Change_Customize_Parameter $var_input_para
0 N( z. i1 ^3 I& J1 a) }; p
6 N4 _: E$ R' q#参数处理,主要是将配置特征字中的_SIP和_H248进行过滤& H+ ~# z* N; t; j- k% U. h/ t) p
HW_Change_Customize_ParameterForVspa $var_input_para. b) c4 V+ T2 O! A4 d. h! d1 n
" d* x5 Z" d6 n) h, N% i0 [#HGU才可以免预配置定制,免预配置定制才涉及CHOOSE_WORD的处理
P1 w! J. f: Z1 A; iHW_Customize_CheckIsHGU" w: K5 n( d# ]
if [ $? -eq 0 ] ; then* W* q, t& s5 r* n: i7 b
var_is_HGU=0
: }" v# l: M" A# _4 wfi
! A# S5 {2 D$ g9 H. |1 X$ |" r _( H* H
#免预配置模式,添加NOCHOOSE字段,并初始化为CHOOSE_XXX
" @: P6 ]) |6 T% J$ G9 Lif [ "$var_cfg_ft_word_choose" = "CHOOSE_" ] \
/ q4 w, S2 j. R @|| [ "$var_cfg_ft_word" = "UNICOM" ] \( `/ ]+ ~: q0 {, l3 `
|| [ "$var_cfg_ft_word" = "UNICOM_BUCPE" ] \! K' x% i; G9 d3 ]1 R
|| [ "$var_cfg_ft_word" = "UNICOMBRIDGE" ] \
5 k% h& t3 |; t0 y$ K|| [ "$var_cfg_ft_word" = "BZTLF2" ] \0 o; S( s' L; S+ [1 l
|| [ "$var_cfg_ft_word" = "BZTLF2WIFI" ] \- X4 F- J' b1 _: g
|| [ "$var_cfg_ft_word" = "CMCC" ] \
1 A! F. L1 }2 Y6 A/ o2 M|| [ "$var_cfg_ft_word" = "CMCC_BUCPE" ] \5 J. f& g& w: d8 H) J
|| [ "$var_cfg_ft_word" = "CMCCWIFI" ] \# z: O& ^1 t5 v
|| [ "$var_cfg_ft_word" = "CMCC_RMS" ] \
( s3 k/ z/ U( M+ N|| [ "$var_cfg_ft_word" = "CMCC_RMS2" ] \
0 L) p% Y7 d; g& Q* n|| [ "$var_cfg_ft_word" = "CMCC_RMSWIFI" ] \
) C7 z" ]% J! Q7 j Z4 @) t|| [ "$var_cfg_ft_word" = "CMCC_RMS2WIFI" ] \
7 {8 `" T$ J4 j/ f|| [ "$var_cfg_ft_word" = "CMCC_RMSBRIDGE" ] ; then2 e, l3 ~1 E: R
{3 h2 [! M* S) c9 i0 W$ q
#HW_Customize_Add_Choose6 w/ S h6 i% Z9 ^' n. L
if [ "$var_cfg_ft_word_choose" = "CHOOSE_" ]; then$ ~4 g! }1 {) O- U- f: u/ s- q
HW_Customize_Set_Choose "$var_cfg_ft_word"2 ?% D B7 d. a2 Z" [7 a# A* H3 N" |
elif [ "$var_cfg_ft_word" = "UNICOMBRIDGE" ] ; then
4 F2 o [1 Y7 l) h( _6 ]! ` HW_Customize_Set_Choose "CHOOSE_UNICOM" ' c# Q1 @, ] X* s6 ]
elif [ "$var_cfg_ft_word" = "BZTLF2WIFI" ] ; then
4 u G* o7 i5 u# P HW_Customize_Set_Choose "CHOOSE_BZTLF2" A+ o: [1 s( O8 d0 X# n6 ]
elif [ "$var_cfg_ft_word" = "CMCC_RMSBRIDGE" ] ; then
! ~: q2 z: p# ^8 v' u' o3 @: ? HW_Customize_Set_Choose "CHOOSE_CMCC_RMS"
9 `* o( y+ [$ u; ^ elif [ "$var_cfg_ft_word" = "CMCC" ] ; then
) H6 f6 d' A" k HW_Customize_Set_Choose "CHOOSE_$var_cfg_ft_word"
, T+ M+ I; N- _0 z: z6 A elif [ "$var_cfg_ft_word" = "CMCCWIFI" ] ; then
% V; l0 W+ c. ` HW_Customize_Set_Choose "CHOOSE_CMCC"0 Z$ M6 _: b" u* L; n" ~
elif [ "$var_cfg_ft_word" = "CMCC_RMSWIFI" ] ; then2 `$ z$ H' y# B% {. D, @
HW_Customize_Set_Choose "CHOOSE_CMCC_RMS"# U' j$ Q' u8 ?& ]
elif [ "$var_cfg_ft_word" = "CMCC_RMS2WIFI" ] ; then0 ]" p a% d! m5 M
HW_Customize_Set_Choose "CHOOSE_CMCC_RMS2"
9 P2 V0 v K' { elif [ "$var_cfg_ft_word" = "CMCC_BUCPE" ] ; then# l0 p5 H( I) f* f. _
HW_Customize_Set_Choose "CHOOSE_CMCC_BUCPE"
! q' e9 C" m" Y7 |) B' h elif [ "$var_cfg_ft_word" = "UNICOM_BUCPE" ] ; then; s. l" w6 c9 s$ M; m9 T
HW_Customize_Set_Choose "CHOOSE_UNICOM_BUCPE"
0 F) z8 o0 s8 G* `' v8 Z5 }! x else8 g, {3 X3 a1 R5 ~+ I5 v+ S
#COMMON/UNICOM定制只有HGU支持免预配置
5 r0 m; l4 l9 t* q1 ? if [ $var_is_HGU -eq 1 ]; then; Y) {1 w; x# N2 p
HW_Customize_Set_Choose "CHOOSE_$var_cfg_ft_word"# L# F4 Z0 A5 B4 U# q( j# j
else2 k+ B. I( d$ U# V* U& Z: K
HW_Customize_Set_Choose ""1 w: J& c8 t' X2 o3 t5 Z
fi
+ X1 i7 ~+ b+ X) v8 F5 _/ p4 D6 m fi( k+ }# d5 t; s
}
: ]1 f9 W) a+ Q6 \else
9 F G2 [4 U/ `/ n8 ?' ?{+ N% n7 c- I+ U( B
HW_Customize_Set_Choose ""
+ e5 v6 S4 C* K! [6 h}) d6 [) ~2 o+ q- m6 F
fi0 \) O' k- _: u& \- a
; J) I+ j) K9 p2 b2 J2 J. \3 m8 Y NHW_Customize_Check_Resource $var_input_para
, x/ Z) y. {- Y( Z. u( |3 [- L+ P, p[ ! $? == 0 ] && exit 1
4 P: b+ [6 B: [8 R% l3 y& V/ q
! m8 E/ {! |- ~ W- C# 结果输出
+ @3 [/ n: j# C: h; U9 k4 RHW_Customize_Print_Result $var_input_para
% H) T; Q+ r# V1 ?2 l; h- Q[ ! $? == 0 ] && exit 1
; b: E5 o9 j" z ^5 c# i5 q7 R0 x
7 K/ a& _" C; F* H0 b8 k#定制处理0 I+ T' O, O1 O2 U
HW_Customize_Delete_File+ t, i* ^' y* P6 c* o( _
echo > /var/notsaveboardinfo
, x/ P& `8 e5 k# L1 a* M' Psync
! s% D3 c2 z% F+ f6 r6 {echo "success!" && exit 08 ]9 L. `& l2 S8 _* Z( y9 `
1 T+ L N% N$ {, p" [ ------------------------------------------------------------ ?: h# G; Y" {* T
+ F' [. C" N7 S附上下载地址
! c7 f& O. q7 M8 g4 N
% T6 e. V! b4 j: i2 `8 @ |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?注册
×
|