shell脚本定期上传日志到hdfs上
来源:互联网 发布:nc数据库 编辑:程序博客网 时间:2024/06/08 23:55
shell脚本定期上传日志到hdfs上
逻辑控制shell脚本如下:
#!/bin/bash#设置java环境变量export JAVA_HOME=/soft/jdkexport JRE_HOME=${JAVA_HOME}/jreexport CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/libexport PATH = ${JAVA_HOME}/bin:$PATH#设置hadoop环境变量export HADOOP_HOME=/soft/hadoopexport PATH=${HADOOP_HOME}/bin:${HADOOP_HOME}/sbin:$PATH#日志文件存放的目录log_src_dir=/home/hadoop/logs/log/#待上传的日志存放目录log_toupload_dir=/home/hadoop/logs/toupload/#日志文件上传到hdfs上的目录hdfs_log_dir=/data/clickLog/2017/#打印环境变量信息echo "envs:hadoop_home: $HADOOP_HOME"#读取日志文件的目录,判断是否有需要上传的文件echo "log_src_dir: $log_src_dir"ls $log_src_dir | while read fileNamedo if[["$fileName" == access.log.*]] then date=`date+%Y_%m_%d_%H_%M_%S` #将文件移动到待上传的目录中并重命名 #打印信息 echo "moving $log_src_dir$fileName to $log_toupload_dir"xxxx_click_log_$fileName"$date" mv $log_src_dir$fileName $log_toupload_dir"xxxx_click_log_$fileName"$date #将待上传的文件path写入一个列表文件willDoing中 echo $log_toupload_dir"xxxx_click_log_$fileName"$date >> $log_toupload_dir"willDoing."$date fidone#找到列表文件willDoingls $log_toupload_dir | grep will | grep -v "_COPY_" | grep -v "_DONE_" | while read linedo #打印信息 echo "toupload is in file":$line #将待上传文件列表willDoing文件改为willDoing_COPY_ mv $log_toupload_dir$line $log_toupload_dir$line"_COPY_" #读列表文件willDoing_COPY_的内容(一个一个待上传文件内容),此处的line就是列表中的待上传文件 cat $log_toupload_dir$line"_COPY_" | while read line do #打印信息 echo "putting ... $line to hdfs path... $hdfs_log_dir" hadoop fs -put $line $hdfs_log_dir done mv $log_toupload_dir$line"_COPY_" $log_toupload_dir$line"_DONE_"done
定时实现
~$crontab -e* * * * * sh /local/shell/xxx.sh
阅读全文
1 0
- shell脚本定期上传日志到hdfs上
- shell脚本 定期删除日志
- Shell脚本定时采集日志数据到HDFS
- shell脚本:定期删除日志文件
- linux 定期删除spark日志 shell 脚本
- flume上传日志到ha hadoop hdfs上
- hadoop学习之HDFS(2.7):实例:开发shell脚本定时采集日志数据到hdfs
- shell脚本实现上传日志到ftp服务器
- 通过shell脚本定期删除linux用户下的日志
- Shell脚本分割Nginx日志,并定期清理
- Shell脚本分割Nginx日志,并定期清理[不重启nginx]
- 定期日志清理脚本
- flume上传文件到hdfs上
- Linux 定期清理日志脚本
- shell脚本定期生成phpdoc
- HDFS定时上传日志的Shell案列
- flume监控spoolDir日志到HDFS(从日志产生到hdfs上一整套)
- 自动备份MySQL数据并上传到FTP上shell脚本
- 判断一个分数是否是无限循环的小数.
- Jquery 常用
- JavaSE基础笔记之直接排序
- Spring Aop 初探(4)
- js--函数
- shell脚本定期上传日志到hdfs上
- 安卓activity生命周期
- django中使用日志
- Android学习笔记(二)——两个ListView联动
- Python包安装:PYHDF安装
- mysql存储引擎
- 7.8---函数入口、求pi、裴波那契、素数、密码、水仙花
- Python:你需要知道的七七八八(基础篇)
- 实验楼 Linux 学习笔记