关于如何根据传入的不同参数,达到动态运行作业的目的,这里不介绍。只提供一个思路,就是不同的调度进程调度同一个Kettle文件时,传入了不同的参数,从而得到不同的数据。

如下图所示:

1. 先设置参数名称,双击Kettle空白处,选择Parameters 选项卡

2. 输入一个参数名,默认值可以不给

3. 测试作业里有两个主要步骤

l set variables 用来把获取到的参数值,设置成一个变量

l write to log 用来打印变量

4. set variables 中需要设置变量名称和变量值

变量名是arg1 ,变量的值是通过命名参数获取进来的。所以使用${} 括起来。

5. write to log 就是简单的打印变量

6. 点击运行作业,然后给参数一个值

对于Linux环境需要些脚本运行,运行脚本类似下面

/kettle/data-integration7/kitchen.sh /file:testargument.kjb /param:"myarg1=123inb"

其中kitchen.sh 是kettle的调用入口

testargument.kjb 是作业文件的路径和名字,我的文件放在当前目录下,所以没有写路径

指定参数时使用双引号括起来。如果有多个参数需要指定,那么需要写多个/param

需要注意,如果多个/param 中指定了相同的参数名,将会报错

Exception in thread "main" java.lang.reflect.InvocationTargetException

7. 查看运行结果

使用Kettle的命名参数动态执行作业的更多相关文章

  1. kettle配置命名参数

    bat 调度文件如下 cd D:/Program Files/kettle700/data-integrationKitchen.bat /rep repository /dir /TEST /job ...

  2. js 以函数名作为参数动态执行 函数

    function myFunc() { console.log(11111); } test("myFunc"); function test(funcName) { if(typ ...

  3. 第二百八十七节,MySQL数据库-条件语句、循环语句、动态执行SQL语句

    MySQL数据库-条件语句.循环语句.动态执行SQL语句 1.if条件语句 delimiter \\ CREATE PROCEDURE proc_if () BEGIN ; THEN ; ELSEIF ...

  4. java:Hibernate框架3(使用Myeclipse逆向工程生成实体和配置信息,hql语句各种查询(使用hibernate执行原生SQL语句,占位符和命名参数,封装Vo查询多个属性,聚合函数,链接查询,命名查询),Criteria)

    1.使用Myeclipse逆向工程生成实体和配置信息: 步骤1:配置MyEclipse Database Explorer: 步骤2:为项目添加hibernate的依赖: 此处打开后,点击next进入 ...

  5. kettle变量(param命名参数)

    1.定义: 编辑-设置-命名参数 在当前界面下定义参数名称和缺省值. 2.引用:原始数据 通过${var}引用变量 输出 注:1.字符串在命名参数引用是需要添加单引号的,但位置参数是不需要进行转译: ...

  6. C# 4.0 新特性dynamic、可选参数、命名参数等

    1.dynamic ExpandoObject熟悉js的朋友都知道js可以这么写 :   1 var t = new Object(); 2 t.Abc = ‘something’; 3 t.Valu ...

  7. kettle用mysql创建资源库执行sql代码报错

    一.原因:  sql语句里边使用 'Y' 'N'  给boolean类型的赋值产生sql失败    二.解决方法:将insert语句中‘Y’或‘N’ 改成TRUE或FALSE即可,共两张表3个地方  ...

  8. Javascript动态执行JS(new Function与eval比较)

    new Function与eval可以动态执行JS,只要把拼接好的JS方法,然后以字符串的形式传入到这两个函数,可以执行,其中new Function用在模板引擎比较多. 用 Function 类直接 ...

  9. C#方法的六种参数,值参数、引用参数、输出参数、参数数组、命名参数、可选参数

    方法的参数有六种,分别是值参数.引用参数.输出参数.参数数组.命名参数.可选参数. 值参数 值参数是方法的默认类型,通过复制实参的值到形参的方式把数据传递到方法,方法被调用时,系统作两步操作: 在栈中 ...

随机推荐

  1. java并发锁ReentrantReadWriteLock读写锁源码分析

    1.ReentrantReadWriterLock 基础 所谓读写锁,是对访问资源共享锁和排斥锁,一般的重入性语义为如果对资源加了写锁,其他线程无法再获得写锁与读锁,但是持有写锁的线程,可以对资源加读 ...

  2. 导出CSV格式

    import org.springframework.beans.factory.annotation.Autowired;import org.springframework.stereotype. ...

  3. jsp 内置对象HTTP协议

    有些对象不用声明就能够在JSP页面的脚本部分使用,这就是JSP的内置对象. JSP的内置对象有:request .response.session.application.out. 下面我们将一一介绍 ...

  4. Neo4j-Cypher查询语言-函数

    断言函数(Predicate functions)  函数名称 函数说明 ALL(identifier in collection WHERE predicate) 判断一个断言(predicate) ...

  5. Validation Engine 表单验证

    前端开发仓库 » jQuery » jQuery Validation Engine 表单验证 jQuery Validation Engine 表单验证来源 功能强大的 jQuery 表单验证插件, ...

  6. 2018-2-13-win10-UWP-Hmac

    title author date CreateTime categories win10 UWP Hmac lindexi 2018-2-13 17:23:3 +0800 2018-2-13 17: ...

  7. shell编写启动脚本

    [root@confluence bin]# vim /etc/init.d/confluence #!/bin/bash # Confluence Linux service controller ...

  8. 前端避免XSS(跨站脚本攻击)

    尽量或禁止使用危险的脚本. 示例1: 如:eval() eval() 函数可计算某个字符串,并执行其中的的 JavaScript 代码.

  9. 重视项目排期,对dateline 有所敬畏

    项目排期 = 个人任务完成 + 风险预估 + 意外情况 + 项目上下游依赖 个人任务完成 个人任务具体话 不要考虑私人情感,专注工作 风险预估 对可能出现的情况进行考虑 意外情况 对出现的意外情况提前 ...

  10. 线段树求后继+环——cf1237D

    /* 首先开三倍消环(两倍是不够的),倒序求值,线段树找一下后继即可 */ #include<bits/stdc++.h> using namespace std; #define N 3 ...