准备工作
将列名加入到表格之中:
echo -e "日期\t新增用户数量" >/liutao/day_new_user.txt
/opt/cloudera/parcels/CDH-5.15.1-1.cdh5.15.1.p0.4/lib/hive/bin/hive -e "$sql" >> /liutao/day_new_user.txt
grep -v WARN /liutao/day_new_user.txt > /liutao/day_new_user_result.txt //正常的上述命令会有两条warn信息,用正则去掉
rm -rf /liutao/day_new_user.txt
使用py脚本将txt转化成xlsx
#encoding:utf-8
from optparse import OptionParser
import sys
default_encoding = 'utf-8'
if sys.getdefaultencoding() != default_encoding:
reload(sys)
sys.setdefaultencoding(default_encoding)
import pandas as pd
def main(argv):
if len(argv)<3:
print('Usage: python write_xlsx.py /liutao/day_new_user_result.txt /liutao/day_new_user_result.xlsx') //这是使用方法
sys.exit()
INPUT_FILE=argv[1]
OUTPUT_FILE=argv[2]
writer = pd.ExcelWriter(OUTPUT_FILE)
data = pd.read_table(INPUT_FILE,sep='\t')
data.to_excel(writer,'sheet',index=False)
writer.save()
if __name__ == "__main__":
main(sys.argv)