Shell
组件介绍
使用Shell作业条目在运行作业的主机上执行 shell 脚本。例如,假设您有一个程序,该程序读取五个数据表,并创建一个指定格式的文件。你知道这个程序是有效的。Shell 允许您在 Pentaho 数据集成中执行部分工作,但可根据需要重用读取数据表的程序。 命令行程序作业条目与平台无关;您可以使用批处理文件、UNIX 等。使用 Shell 作业条目时,Pentaho 数据集成会调用 Java 来在指定位置执行程序。返回状态由操作系统调用提供。例如,在批处理脚本中,返回值为 1 表示脚本成功;在批处理脚本中,返回值为 1,表示脚本成功;返回值 0(零)表示不成功。您可以通过命令行参数并设置命令程序作业条目的日志记录。
双击组件运行图
页面介绍
选项 | 描述 |
---|---|
作业项名称 | 作业项名称。此名称在单个作业中必须是唯一的。 |
插入脚本 | 当您想要在脚本选项卡中执行脚本而不是执行脚本文件名时,请选中此选项。当您想要执行操作系统命令(如dir、ls或ipconfig)而不提供特定路径时,这同样很有用。此选项在工作目录中创建一个临时脚本并执行它。 |
注意:给定时,变量在脚本中解析。 | |
脚本文件名 | 要启动的 shell 脚本的文件名应包含其他 ${user.dir} 用作路径的完整路径 |
工作路径 | 将用作 shell 脚本工作目录的目录。工作目录仅在 shell 脚本启动时才处于活动状态,因此"文件名"仍应包括脚本的完整路径。当字段留空或工作目录无效时 $[user.dir] 将用作工作目录。 |
指定日志文件 | 启用指定用于执行此转换的单独日志记录文件 |
追加日志文件 | 启用追加到日志文件,而不是创建新的日志文件 |
日志文件名称 | 日志文件的目录和基名(例如 C:\logs) |
日志文件扩展名 | 文件名扩展名(例如:日志或 txt) |
日志文件中包含日期 | 将系统日期添加到文件名。(_20051231) |
日志文件中包含时间 | 将系统时间添加到文件名。(_235959) |
日志级别 | 指定执行 shell 的日志记录级别。 |
将上一个结果作为参数 | 可以使用"复制行结果"步骤将上一个转换的结果发送到 shell 脚本。(作为参数) |
对每一个输入行执行一次 | 这将实现循环。如果上一个作业条目返回一组结果行,则对于找到的每一行,可以执行一次此 shell 脚本。每次执行时,一行将传递给此脚本,并结合将上一个结果复制到参数。然后可以在命令行参数 $1、$2、...(%1, %2, %3, ...在窗口上) |
使用案例
暂无