#! /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