5 Exp脚本解释
$ R$ j1 j/ A, x5 T5 v/ i8 o& c GetPrevDate(){/ l2 @" s% v0 `& N! X) U
str=$1
# i' i3 S' Y4 k+ J. p! E- P days=$2
+ X' k9 d" q: _7 {6 L# |3 U" d" a yy=`echo $str|cut -c 1-4`
# q: ]1 M; H4 N, r } mm=`echo $str|cut -c 5-6`% j5 Q. x- }0 q' F8 A! `" u
dd=`echo $str|cut -c 7-8`
3 s) `; ^2 }7 T0 A9 h* | sav_dd=$days+ v9 M; u( m* J( Y
days=`expr $days - $dd`
( a8 b6 P( U+ L( {7 U1 w while [ $days -ge 0 ]) m8 L0 p2 ?& i m9 o! I# t% ]
do7 `+ | S) l k: P+ T+ F, L
mm=`expr $mm - 1`6 ^' s [3 n! h4 w% u( k& L
[ $mm -eq 0 ] && mm=12 && yy=`expr $yy - 1`
, W3 {8 `+ @* n aaa=`cal $mm $yy`6 A- e4 T* y, o. e* r, l3 x/ O
bbb=`echo $aaa|awk ’{print $NF}’`
$ [$ T9 r; e* \" M* g+ w2 W days=`expr $days - $bbb`
# h5 C; v9 ^1 x) Q done2 Z0 s+ b! M, V* b
dd=`expr 0 - $days`- L% t, K' \; k* @5 h6 s
expr $dd : "^.$" > /dev/null && dd=0$dd& b2 X( |6 G0 o) P& Q; e4 q
expr $mm : "^.$" > /dev/null && mm=0$mm
$ ^: ^4 ~$ K& X* b& B3 u echo $mm"_"$dd- N2 ~( v% z) l: W, k1 A4 K1 A
}
( @, P$ ?# Z! {+ f* }( q 注释:Ksh下的函数,用于取得第n天前日月数+ B3 p p3 a1 p; v# @7 n8 S
todayDate=`date "+%Y%m%d"`
( a/ V9 I$ m" c5 \2 f) L% y0 C thisday="`GetPrevDate ${todayDate} 2`"* X' J3 t, x' Q0 M# H
注释:用于取得前天的日月,形如08_08
+ k# r4 K. G% X" ^7 D. t, W x dmpfile="/sms/t_sms.dmp"* W% c& ^3 l2 n
注释:Dmp文件名称及路径 + r6 l! t8 q* M" \! v
logfile="/sms/t_sms_"$thisday".log"' b- H7 J& I/ f1 w
注释:备份日志名称及路径 - C Q S& i. Y0 h0 I# J$ j4 T
partitionno="t_sms:P"$thisday`` & ~7 B3 {1 |9 L4 H8 g; m
exp sms/sms rows=y indexes=n compress=n buffer=204800000 direct=y feedback=100000 / X$ R0 a! D7 P
file=$dmpfile log=$logfile tables=$partitionno
* ^* a7 F# D9 i' j6 h8 y 注释:tables=$partitionno |