log备份压缩以及获取指定内容到新文件

清华大佬耗费三个月吐血整理的几百G的资源,免费分享!....>>>

#!/bin/sh  
#============ get the file name ===========  
Folder_A="/mnt/log/"  #这是我log存放的地方
#Output_file="mysql.txt"  
t=$(date +%Y%m%d%H%M%S)      #时间戳,命名用
d=$(date +%Y%m%d)                                                                                                                                  
for file_a in ${Folder_A}/*; do  #获取该文件夹下的所有日志文件
    temp_file=`basename $file_a`  
    #echo $temp_file >> $Output_file  
    while read line    #读行
	do
	grep "sessionid">>/mnt/datas/mysql_$d.txt;   #获取含sessionid的行输出到txt文件
    	done < ${Folder_A}/$temp_file
done
ls ${Folder_A}/    #压缩
    if [ $? -eq 0 ];then
        tar -zcvf log_$t.tar.gz ${Folder_A}/  #压缩
    else
        echo   "yourdir is empty!" >>log.log  #该shell运行的log
    fi
for file_b in ${Folder_A}/*; do  #清空日志文件,不是删除
    temp_file=`basename $file_a`
    cat /dev/null >${Folder_A}/$temp_file
done