使用shell读取文本文件发送到kafka

时间:2018-01-17 20:17:55   收藏:0   阅读:1792
#!/bin/sh

## 参数定义
dt=`date +"%Y%m%d" -d "-1 days"`
outpath=/xxxx_log_${dt}.txt   
brokerlist=192.168.1.100:9092,192.168.1.101:9092,192.168.1.102:9092

echo $dt $outpath $brokerlist

## 查询hive表,输出文件到指定路径
hive -e "select name,age from test" > ${outpath}
## 判断文件大小,如果大于0,则加载文件,写入kafka
## 注意 结尾的 | > out.txt要加上,否则会出现很多奇怪的大于号 fileSize
=`du -b ${outpath} | awk {print $1}` if [ $fileSize -gt 0 ] then cat ${outpath} | ./kafka_2.11-1.0.0/bin/kafka-console-producer.sh --broker-list ${brokerlist} --sync --topic test1 | > out.txt fi

 

评论(0
© 2014 mamicode.com 版权所有 京ICP备13008772号-2  联系我们:gaon5@hotmail.com
迷上了代码!