linux部署kettle

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、文件路徑的指定

發佈了54 篇原創文章 · 獲贊 11 · 訪問量 6萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章