RestCloud ETL解决shell脚本参数化

 RestCloud ETL社区版是一款数据集成工具,提供可视化多数据管道构建、数据源管理、运行监控及权限管理功能。

RestCloud平台中如何将变量传入shell脚本中使用,平台中有两种方式运行shell脚本,分别是组件内编写脚本代码调用脚本文件,根据不同的运行方式也有不同的获取变量的方式。

1.组件内编写脚本

组件内编写脚本的变量获取方式与其它组件获取变量的方式相同,使用${变量id}就可以获取到变量数据。如下图所示:

这里做个简单的流程,把数据库表中的某个字段数据作为变量逐条输入到shell脚本当中。

这里是数据库数据,流程中会将姓名作为变量。

库表输入组件的配置这边略过,简单的能够成功读取输出数据就行。

 逐行输出这里需要将字段数据转成为变量数据输出到下一个节点。

 这里是shell脚本配置,写个简单的脚本,使用${变量id}调用上个节点传入的变量数据。

 运行之后可以看见已经成功通过${姓名}获取到了数据库输出的数据。

2.调用脚本文件

这个是调用已经写好的shell脚本文件,脚本文件中不用定义变量的名字,直接使用 $变量id 这种方式调用就可以成功调用流程中传入的变量。如下图:

 这里同样采用上面的流程和数据库,只是稍微修改了一下shell组件的脚本内容。

 因为是读取的脚本文件,这里需要填写一下脚本所在的目录。在shell脚本中运行文件以及使用${变量id}来获取变量即可,注意:若是多个变量就需要注意变量的顺序。

 这里进入到文件所在目录后使用pwd查看当前所在的路径地址。

 使用vim 文件名称 进入脚本文件编辑脚本代码,这里简单的打印第一个变量和一个hello,在文件中使用$1~$n来添加传到Shell的变量值。$1是第1变量、$2是第2变量…。

配置完成,运行后查看结果。

 可以看到shell成功获取了变量数据,输出到了日志中。

 感谢您对我们的关注和支持!如需了解更多的功能,请加入RestCloud ETL社区免费下载体验,下载地址:https://etl.restcloud.cn

猜你喜欢

转载自blog.csdn.net/RestCloud/article/details/125427768