#!/bin/bash
## 功能:自动生成两个文件 ,文件一以空格为分隔符 ,第一列为手机号码 ,第二列为话费金额
## 文件二以空格为分隔符 ,第一列为手机号码 ,第二列为流量金额
## 其中 ,文件一、二中的手机号码相同、并且一一对应 ,金额不同
## 要求:1、打印出话费金额最大的手机号码跟话费消费金额
## 2、打印出流量金额最大的手机号码跟流量消费金额
## 3、汇总出总话费金额、总流量金额 ,并计算出各平均值
## 4、如果某一手机号码的话费金额超过平均值 ,那么显示 “手机号码 话费金额 平均值”
## 5、如果某一手机号码的流量金额超过平均值 ,那么显示 “手机号码 流量金额 平均值”
## 6、如果某一手机号码的话费金额、流量金额都超过平均值 ,那么显示 “手机号码 恭喜你成为 VIP”
## 7、将 VIP 手机号码的话费金额跟流量金额相加 ,数值最大的手机号码显示 “手机号码 恭喜你成为 VIP_P”
## Writen by Wangxiaoqiang 2014/12/18.
fun_file1_2(){
i=0
while [ $i -le 20 ];do
num=$RANDOM
[ ${#num} -eq 4 ] && echo "135$num$num $[$num/90]" >> huafei.txt \
&& echo "135$num$num $[$num/70]" >> liuliang.txt \
&& let i++
done
}
fun_1(){
echo "#################################################################"
awk '{if ($2>max){max=$2 ; max1=$0}} END {print max1}' huafei.txt
}
fun_2(){
awk '{if ($2>max){max=$2 ; max1=$0}} END {print max1}' liuliang.txt
}
fun_3(){
line=`wc -l < huafei.txt`
sum_huafei=`awk '{sum+=$2}END{print sum}' huafei.txt`
sum_liuliang=`awk '{sum+=$2}END{print sum}' liuliang.txt`
avg_huafei=`echo "scale=2;$sum_huafei/$line" | bc`
avg_liuliang=`echo "scale=2;$sum_liuliang/$line" | bc`
echo "##################################################################"
echo "sum_huafei = $sum_huafei"
echo "sum_liuliang = $sum_liuliang"
echo "avg_huafei = $avg_huafei"
echo "avg_liuliang = $avg_liuliang"
}
fun_4_5_6_7(){
fun_3
number=(`awk '{print $1}' huafei.txt`)
huafei=(`awk '{print $2}' huafei.txt`)
liuliang=(`awk '{print $2}' liuliang.txt`)
length=${#number[@]}
echo "###################################################################"
for ((i=0;i<$length;i++))
{
n=`echo "scale=2;${huafei[$i]}-$avg_huafei" | bc`
echo $n | grep -q '-'
[ $? -ne 0 ] && echo " ${number[$i]} ${huafei[$i]} $avg_huafei" \
&& echo ${number[$i]} >> vip_huafei
}
echo "###################################################################"
for ((i=0;i<$length;i++))
{
m=`echo "scale=2;${liuliang[$i]}-$avg_liuliang" | bc`
echo $m | grep -q '-'
[ $? -ne 0 ] && echo " ${number[$i]} ${liuliang[$i]} $avg_liuliang" \
&& echo ${number[$i]} >> vip_liuliang
}
vip=(`comm -12 vip_huafei vip_liuliang`)
length2=${#vip[@]}
for ((i=0;i<$length2;i++))
{
echo "${vip[$i]} you have become VIP !"
}
echo "###################################################################"
for ((i=0;i<$length2;i++))
{
vip_huafei=`grep ${vip[$i]} huafei.txt`
vip_liuliang=`grep ${vip[$i]} liuliang.txt`
vip_h=`echo $vip_huafei | awk '{print $2}'`
vip_l=`echo $vip_liuliang | awk '{print $2}'`
echo "${vip[$i]} `expr $vip_h + $vip_l`" >> vip_sum
}
vip_p=`awk '{if ($2>max){max=$2;vip_p=$1}} END {print vip_p}' vip_sum`
echo "$vip_p you have become VIP_P !!!"
}
[ -e huafei.txt ] && rm -rf huafei.txt
[ -e liuliang.txt ] && rm -rf liuliang.txt
[ -e vip_huafei ] && rm -rf vip_huafei
[ -e vip_liuliang ] && rm -rf vip_liuliang.txt
[ -e vip_sum ] && rm -rf vip_sum
fun_file1_2
fun_1
fun_2
fun_4_5_6_7
# End