#!/bin/bash
source /etc/profile


tool_path=/data/rsync_client
root_path=/data/log


###
#yyyy-mm-dd¸ñʽ
date_today=`date +"%Y-%m-%d"`
date_yesterday=`date -d "yesterday" +%Y-%m-%d`


#yyyymmdd¸ñʽ
date_today_hadoop=`date +"%Y%m%d"`
date_yesterday_hadoop=`date -d "yesterday" +%Y%m%d`


#yyyymd¸ñʽ
file_today=${date_today//-0/-}
file_yesterday=${date_yesterday//-0/-}


### kill rsync
${tool_path}/killrsync.sh


###
destFile_yesterday="${tool_path}/tlog/${date_yesterday_hadoop}"
if [[ ! -d ${destFile_yesterday} ]]; then
mkdir -p ${destFile_yesterday}
fi


destFile_today="${tool_path}/tlog/${date_today_hadoop}"
if [[ ! -d ${destFile_today} ]]; then
mkdir -p ${destFile_today}
fi


## ÿÌìÉú³ÉÒ»¸öÎļþ£¬Ã»¹ýÂ˵ôZKMONITORµÄÈÕÖ¾£¬ÀïÃæÒ²´øÁË|
## cat ${root}/*.${file_yesterday} | grep '20..-.*LOG:.*|.*' | awk '{$1="";$2="";$3="";$4="";sub(" LOG:", "");print}' > ${destFile_yesterday}/tlog_${date_yesterday_hadoop}.log
## cat ${root}/*.${file_today} | grep '20..-.*LOG:.*|.*' | awk '{$1="";$2="";$3="";$4="";sub(" LOG:", "");print}' > ${destFile_today}/tlog_${date_today_hadoop}.log


cd ${root_path}
list_alldir(){
for file2 in `ls -a $1`
do
if [ x"$file2" != x"." -a x"$file2" != x".." ];then
if [ -d "$1/$file2" ];then
echo "$1/$file2"
cd $1/${file2}
cat $1/${file2}/*.${file_yesterday} | grep '20..-.*LOG:.*|.*' | awk '{$1="";$2="";$3="";$4="";sub(" LOG:", "");print}' > ${destFile_yesterday}/tlog_${date_yesterday_hadoop}_${file2}.log
cat $1/${file2}/*.${file_today} | grep '20..-.*LOG:.*|.*' | awk '{$1="";$2="";$3="";$4="";sub(" LOG:", "");print}' > ${destFile_today}/tlog_${date_today_hadoop}_${file2}.log


list_alldir "$1/${file2}"
fi
fi
done
}

list_alldir ${root_path}


cd ${destFile_yesterday}
find . -name "*" -type f -size 0c | xargs -n 1 rm -f
cd ${destFile_today}
find . -name "*" -type f -size 0c | xargs -n 1 rm -f


### start rsync
flock -xn ${tool_path}/rsync.lock -c "${tool_path}/start.sh"


注意:

1、一定要使用绝对路径

2、定义变量时等号两边加空格会识别不出来。

最新文章

  1. STM32f10xxx 之 GPIO口配置
  2. css3属性选择器
  3. 《Linux菜鸟入门2》Ldap
  4. python-appium识别元素等待时间
  5. mariadb 10 多源复制(Multi-source replication) 业务使用场景分析,及使用方法
  6. SQL 返回数量一定的行
  7. Android icons集合
  8. CentOS下Eclipse的安装教程
  9. Android Stdio 中的Rendering Problems Android N requires the IDE to be running with Java 1.8 or later Install a supported JDK解决办法
  10. Lambda表达式概念与基本语法
  11. qt之窗口换肤
  12. vim常用命令行备忘总结
  13. 如何优雅地使用Sublime Text3
  14. unbuntu安装Node.js
  15. bzoj4176. Lucas的数论 杜教筛
  16. LINUX内核完全注释
  17. 如何在Vblock里配置Boot from SAN
  18. 【名称解释】#001 IIS名词解释
  19. oracle权限赋予
  20. TCL数据类型

热门文章

  1. [转]linux中vim命令
  2. mysql之 redo log
  3. webpack 4 学习资料
  4. 高阶组件 Higher-order Components (HOC) 知识点
  5. java-常用注解
  6. py-day1-4 python基本数据类型2
  7. System Generator 参数优化
  8. OpenEXR-2.2.0在Win7 x64系统下的安装方法
  9. 研究js特效巩固JavaScript知识
  10. HTML+CSS补充