yyyy=1981 yyye=2004 while [ $yyyy -le $yyye ] ; do echo $yyyy yy=`echo $yyyy | awk '{print substr($1,3,2) }' ` mkdir $yyyy cp ../monthly/$yyyy/D* ./ for mm in 01 02 03 04 05 06 07 08 09 10 11 12 ; do if [ -e D${yy}-${mm}.DAT ] ; then awk -F "," ' BEGIN {OFS=","} ; {if ($6 < 0 || $6 > 360 ) a6=-99999 ; else a6=$6 } ; {if ($7 < 0 || $7 > 5000 ) a7=-99999 ; else a7=$7*0.01 } ; {if ($8 < 0 || $8 > 5000 ) a8=-99999 ; else a8=$8*0.01 } ; {if ($9 < 0 || $9 > 5000 ) a9=-99999 ; else a9=$9*0.01 } ; {if ($10 < -100000 || $10 > 10000) a10=-99999 ; else a10=$10*0.0001 } ; {if ($11 < -100000 || $11 > 10000) a11=-99999 ; else a11=$11*0.0001 } ; {if ($12 < -100000 || $12 > 10000 ) a12=-99999 ; else a12=$12*0.0001 } ; {if ($13 < -2000 || $13 > 8000 ) a13=-99999 ; else a13=$13*0.0001 } ; {if ($14 < -2000 || $14 > 8000 ) a14=-99999 ; else a14=$14*0.0001 } ; {if ($15 < -2000 || $15 > 8000 ) a15=-99999 ; else a15=$15*0.0001 } ; {if ($16 < 0 || $16 > 15000 ) a16=-99999 ; else a16=$16*0.1 } ; {if ($17 < -2000 || $17 > 15000 ) a17=-99999 ; else a17=$17*0.1 } ; {if ($18 < -2000 || $18 > 2000 ) a18=-99999 ; else a18=$18*0.1 } ; {if ($19 < -150 || $19 > 450 ) a19=-99999 ; else a19=$19*0.1 } ; {if ($20 < -150 || $20 > 450 ) a20=-99999 ; else a20=$20*0.1 } ; {if ($21 < -150 || $21 > 450 ) a21=-99999 ; else a21=$21*0.1 } ; {if ($22 < -150 || $22 > 400 ) a22=-99999 ; else a22=$22*0.1 } ; {if ($23 < -150 || $23 > 400) a23=-99999 ; else a23=$23*0.1 } ; {if ($24 < -150 || $24 > 400) a24=-99999 ; else a24=$24*0.1 } ; {if ($25 < -150 || $25 > 400) a25=-99999 ; else a25=$25*0.1 } ; {if ($26 < 0 || $26 > 5000 ) a26=-99999 ; else a26=$26*0.001 } ; {if ($27 < 0 || $27 > 10000 ) a27=-99999 ; else a27=$27*0.001 } ; {if ($28 < 0 || $28 > 22000 ) a28=-99999 ; else a28=$28*0.001 } ; {if ($29 < -200 || $29 > 450 ) a29=-99999 ; else a29=$29*0.1 } ; {if ($30 < -200 || $30 > 450 ) a30=-99999 ; else a30=$30*0.1 } ; {if ($31 < -200 || $31 > 450 ) a31=-99999 ; else a31=$31*0.1 } ; {if ($32 < 0 || $32 > 500 ) a32=-99999 ; else a32=$32*0.01 } ; {if ($33 < 0 || $33 > 500 ) a33=-99999 ; else a33=$33*0.1 } ; ######{if ($34 < 0 || $34 > 500 ) a34=-99999 ; else a34=$34*0.01 } ; { if ( $2 >= 80 && $2 < 95 ) { if ( $34 < 0 || $34 > 50 ) { a34=-99999 } else { a34=$34*0.1 } } } { if ( $2 == 95) { if ( $3 <= 6 ) { if ( $34 < 0 || $34 > 500 ) { a34=-99999 } else { a34=$34*0.1 } } } } { if ( $2 == 95) { if ( $3 == 6 ) { if ( $4 <= 23 ) { if ( $34 < 0 || $34 > 500 ) { a34=-99999 } else { a34=$34*0.1 } } } } } { if ( $2 == 95) { if ( $3 == 6 ) { if ( $4 > 23 ) { if ( $34 < 0 || $34 > 500 ) { a34=-99999 } else { a34=$34*0.01 } } } } } { if ( $2 == 95) { if ( $3 >= 7 ) { if ( $34 < 0 || $34 > 500 ) { a34=-99999 } else { a34=$34*0.01 } } } } { if ( $2 > 95 || $2 < 40 ) { if ( $34 < 0 || $34 > 500 ) { a34=-99999 } else { a34=$34*0.01 } } } {if ($35 < 8000 || $35 > 11000 ) a35=-99999 ; else a35=$35*0.1 } ; {if ($36 < 0 || $36 > 5000 ) a36=-99999 ; else a36=$36*0.01 } ; {if ($37 < -9999 || $37 > 9999 ) a37=-99999 ; else a37=$37 } ; {if ($38 < 0 || $38 > 600 ) a38=-99999 ; else a38=$38*0.1 } ; { if ($2 >= 0) print $1,$2,$3,$4,$5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16,a17,a18,a19,a20,a21,a22,a23,a24,a25,a26,a27,a28,a29,a30,a31,a32,a33,a34,a35,a36,a37,a38 }' D${yy}-${mm}.DAT > $yyyy/D${yy}-${mm}.v1.1.DAT rm D${yy}-${mm}.DAT fi done yyyy=$((yyyy+1)) done