shell定時執行hive腳本文件

#! /bin/bash
###############################
# 調用格式
# 腳本名稱 [yyyymmdd]
# 日期參數可選,默認是系統日期-1
##############################

dt=''
table=test001

#獲取系統當前時間
sysdate=`date +%Y%m%d`

##獲取昨天的時間
yesterday=`date -d yesterday +%Y%m%d`

##數據文件地址
file_path=/usr/local/devTools/hive/data/


if [ $# -eq 1 ]; then
    dt=$1
elif [ $# -eq 0 ]; then
    dt=${yesterday}
else
    echo '非法參數'
exit 1
fi


filename=${file_path}${table}'_'$dt'.txt'
if [ ! -e ${filename} ];then
    echo ${filename}'文件不存在'
    exit 1
fi


hive<<EOF
load data local inpath '${filename}' overwrite into table default.${table}
EOF
if [ $? -eq 0 ]; then
  echo $dt "${table}加載成功!"
else
  echo "${table} 加載時報"
fi
相關文章
相關標籤/搜索