kettle spoon shell批处理脚本模板

经常使用kettle进行etl开发,总结dos命令脚本如下,执行时,仅需替换运行参数即可。

参数列表

参数参数描述示例
pathkettle应用程序路径set path=%path%;d:\data-integration_4.1.0
fileName脚本文件名称set fileName=脚本名称.ktr
param脚本参数set param="/param:参数名称=参数值"

执行日志

脚本执行时,默认将日志输出到当前目录的logs目录下;

输出目录

脚本执行时,默认在当前目录生成output目录,用于规范输出结果目录;

脚本模版

  • 1、执行Ktr脚本模版:
echo off
cls

if "%cnt%"=="" set /a cnt=0
set /a cnt+=1

set path=%path%;d:\data-integration_4.1.0
rem ------------------------------------------------------------------
set fileName=脚本名称.ktr
title %fileName% [%date% %time%][%cnt%]
rem ------------------------------------------------------------------

if not exist logs md logs
if not exist output md output

set level="/level:Detailed"
set file="/file:%cd%\%fileName%"
set log="/logfile:%cd%\logs\%fileName%.%date:~0,4%%date:~5,2%%date:~8,2%.log"
set param="/param:参数名称=参数值"

call pan.bat %level% %file% %log%

pause
  • 2、执行Ktr脚本模版-资源库
echo off
cls

if "%cnt%"=="" set /a cnt=0
set /a cnt+=1

set path=%path%;d:\data-integration_4.1.0
rem ------------------------------------------------------------------
set fileName=脚本名称
title %fileName% [%date% %time%][%cnt%]
rem ------------------------------------------------------------------

if not exist logs md logs
if not exist output md output

set level="/level:Detailed"
set file="/trans:%fileName%" "/dir:目录"
set log="/logfile:%cd%\logs\%fileName%.%date:~0,4%%date:~5,2%%date:~8,2%.log"
set param="/param:参数名称=参数值"

set r="/rep:etl_res" "/user:admin" "/pass:admin"

call pan.bat %r% %level% %file% %log% 

pause
  • 3、执行Job脚本模版
echo off
cls

if "%cnt%"=="" set /a cnt=0
set /a cnt+=1

set path=%path%;d:\data-integration_4.1.0
rem ------------------------------------------------------------------
set fileName=脚本名称.kjb
title %fileName% [%date% %time%][%cnt%]
rem ------------------------------------------------------------------

if not exist logs md logs
if not exist output md output

set level="/level:Detailed"
set file="/file:%cd%\%fileName%"
set log="/logfile:%cd%\logs\%fileName%.%date:~0,4%%date:~5,2%%date:~8,2%.log"
set param="/param:参数名称=参数值"

call Kitchen.bat %level% %file% %log% 

pause
  • 4、执行Job脚本模版-资源库
@echo off
cls

if "%cnt%"=="" set /a cnt=0
set /a cnt+=1

set path=%path%;d:\data-integration_4.1.0
rem ------------------------------------------------------------------
set fileName=脚本名称
title %fileName% [%date% %time%][%cnt%]
rem ------------------------------------------------------------------

if not exist logs md logs
if not exist output md output

set level="/level:Detailed"
set file="/job:%fileName%"
set log="/logfile:%cd%\logs\%fileName%.%date:~0,4%%date:~5,2%%date:~8,2%.log"
set param="/param:参数名称=参数值"

set r="/rep:etl_res" "/user:admin" "/pass:admin"

call Kitchen.bat %r% %level% %file% %log%

pause
  • 5、Linux脚本模版
#!/bin/bash
# PATH=/program/etl/data-integration:$PATH
# The logging level (Basic, Detailed, Debug, Rowlevel, Error, Nothing)

file_name=etl_file_name.ktr
base_dir=/path_to_etl_folder

file_path=$base_dir/$file_name
log_path=$base_dir/logs/$file_name.`date +%Y%m%d`

if [ ! -d "$base_dir/logs" ]; then
	mkdir -p "$base_dir/logs"
fi

if [ ! -d "$base_dir/output" ]; then
	mkdir -p "$base_dir/output"
fi

pan.sh -level=Basic -file=$file_path -logfile=$log_path.1.log '-param:year=2021'
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值