tar解压压缩包内的指定文件

最近有老的机房下线了,为了提高日志备份的速度,我就把每个应用下的日志目录整体打包压缩了。
但是这样又带来了一个新的问题,那就是经常会有人来找我提取日志查看,我地根据每个人的需求把日志解压出来。
因为日志存在一个存储上面,直接全部解压的话实际上会有很大的网络流量(log.tgz)NAS–>unzip server –>NAS(log)。
所以就写了个脚本只把每个应用下的指定日志解压出来

  
#!/bin/bash  
#############################  
#  
#Author: GNUer  
#############################  
LOGDIR=/mnt/abcvm/abcvm/app  
APP=$1  
LOGNAME="$2"  
APPLOG=$LOGDIR/$APP/  
usage(){  
echo -e "usage:\n"  
echo -e "\t$0 APP LOGNAME"  
exit 0  
}  
OLDDIR=$(pwd)  
echo "unzip $APP $LOGNAME*"  
getlogname(){  
local app  
local logname  
app=$1  
logname=$2  
[ ! $app ] && exit 2  
for tgz in $(find  $LOGDIR/$APP -name "*.tgz")  
do

dir=${tgz%/*.tgz}  
cd $dir  
echo "unzip $tgz –> $dir"  
tar –wildcards -zxf $tgz "*$logname*"  
done  
cd $OLDDIR

}  
[ $# -ne 2 ] && usage  
getlogname $APP $LOGNAME