调用KETTLE作业脚本

这篇文章详细描述了如何通过bash脚本startkjb.sh调用Kettle的kitchen.sh脚本,涉及参数设置如-rep,-user,-pass等,以及如何处理传入的test参数和directory选择。
摘要由CSDN通过智能技术生成

脚本存放位置:/opt/kettle/script

[root@cm01 script]# vim startkjb.sh

① 调用job脚本:

#!/bin/bash

cmd="sh /opt/kettle/data-integration/kitchen.sh"
rep="-rep=kettlelib195"
user="-user=xxxx"
pass="-pass=xxx"
dir="-dir=kjb"
job="-job=$1"  # 这里的 $1 表示第一个参数(即传入的 test 参数)
level="-level=Basic"
if [ -n "$2" ]; then
  dir="-dir=$2"
fi
command="$cmd $rep $user $pass $dir $job $level"
eval $command

执行:

/opt/kettle/script/startkjb.sh sf_wopd kjb/sf

②版本迭代,新增一个参数data,这个参数是日期字段,可灵活更新还是删除那个月/天数据

#!/bin/bash  

cmd="sh /opt/kettle/data-integration/kitchen.sh"
rep="-rep=kettlelib195"
user="-user=kettleauto188"
pass="-pass=auto@188"
dir="-dir=kjb"
job="-job=$1"  # 第一个参数是作业名称  
level="-level=Basic"
today=$(date +"%Y-%m-%d")

# 检查是否有第三个参数(data值)  
if [ -n "$3" ]; then
  data_param="-param:data=$3"
else
  data_param="-param:data=$today"
fi

# 检查是否有第二个参数来覆盖默认目录  
if [ -n "$2" ]; then
  dir="-dir=$2"
fi

# 构建完整的命令  
command="$cmd $rep $user $pass $dir $job $level $data_param"

# 执行命令  
eval $command

执行

/opt/kettle/script/startkjb_para.sh test_tmp2 ktr/delete 2024-07-01
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值