1、出去安裝kettle外的流程【創建這些】
2、在cmd.sh中指定工作路徑:
#!bin/sh
#指定kettle的日誌路徑
logpath=/home/pico/logs/
#指定環境變量
export KETTLE_HOME=/home/pico/kettle/
#指定字符集
export LC_ALL=en_US.UTF-8
#輸出Kettle的家
echo "KETTLE_HOME=$KETTLE_HOME"
echo "starting..."
#聲明時間變量,並輸出今天的時間
vardate='date +%Y%m%d%H%M%S'
echo today is 'date +%Y%m%d'
#指定日誌文件夾=時間戳
LOGFOLDER=${date +%Y%m%d}
#指定日誌文件名=
LOGFILE${date +%H%M%S}
#如果日誌文件夾不存在,則創建
if [ ! -d "$logpath$LOGFOLDER" ];then
mkdir -p "$logpath$LOGFOLDER"
fi
#作業路徑=
JOBPATH=/home/pico/ETL
#當作業文件是以下任何一個時,文件的選擇
JOBFILE=""
if [ "$1" = "migsync" ]; then
echo "start a migrate sync task."
JOBFILE="$JOBPATH/HYXF_MIGRA/MIGRA_YUANSHI.kjb"
elif [ "$1" = "migtrans" ]; then
echo "start a migrate trans task."
JOBFILE="$JOBPATH/HYXF_MIGRA/MIGRA_BH.kjb"
elif [ "$1" = "migrpt" ]; then
echo "start a migrpt report task."
JOBFILE="$JOBPATH/HYXF_MIGRA/MIGRA_BH_RPT.kjb"
elif [ "$1" = "sync" ]; then
echo "start a sync task."
JOBFILE="$JOBPATH/HYXF_SYNC/SYNC_PROD/SYNC_PROD.kjb"
elif [ "$1" = "revprod" ]; then
echo "start a rev product task."
JOBFILE="$JOBPATH/HYXF_SYNC/REV_PROD/REV_PROD.kjb"
elif [ "$1" = "revloan" ]; then
echo "start a rev loan task."
JOBFILE="$JOBPATH/HYXF_SYNC/REV_LOAN/REV_LOAN.kjb"
elif [ "$1" = "trans" ]; then
echo "start a trans date."
JOBFILE="$JOBPATH/HYXF_TRANS/TRANS_DATE/TRANS_DATE.kjb"
elif [ "$1" = "rpt" ]; then
echo "start a report date task."
JOBFILE="$JOBPATH/HYXF_RPT/HYXF_RPT.kjb"
elif [ "$1" = "test" ]; then
echo "start a test job."
JOBFILE="$JOBPATH/test.kjb"
#當不再以上時,退出
else
echo "cmd.sh should after a command or command is error . . ."
return 0
fi
#kettle絕對路徑下的kitchen.sh
#參數hyxf.repo_dir=
#將作業文件寫入到日誌文件
/home/pico/kettle/kitchen.sh -param:hyxf.repo_dir=/home/pico/ETL -file $JOBFILE > "$logpath$LOGFOLDER/$LOGFILE""_"$1.log 2>&1 &
echo "done!"
到這裏kettle的啓動初始化腳本文件就基本上結束了。,
【注意事項:
1、$1的含義
2、文件路徑的指定
】