datastage - 在不使用 Unix 命令的情况下在 UNIX 中读取文件(可能是 Datastage 例程)
问题描述
我在 Unix 路径中有一个文件,其中包含如下数据:2019-06-21,2019-06-22|2019-06-22,2019-06-23
我想阅读此日期并将其传递给 User Variable Activity 。
我不允许使用 ant Unix 命令读取文件。
我看了一些论坛,发现可以通过例程活动来完成,但不知道在哪里写例程以及例程名称是什么。
任何人都可以在这方面提供帮助
* open FinaltestOut.txt
OPENSEQ /home/shivam : '\' : FinaltestOut.txt TO H.FinaltestOut.txt THEN
CALL DSLogInfo("******************** File " : FinaltestOut.txt : " opened successfully", "JobControl")
END ELSE
CALL DSLogInfo("Unable to open file", "JobControl")
ABORT
END
READSEQ FinaltestOut.txt.RECORD FROM H.FinaltestOut.txt ELSE
Call DSLogWarn("******************** File is empty", "JobControl")
END
firstline = Trim(FinaltestOut.txt.RECORD[1,32]," ","A") ******* will read the first 32 chars
Call DSLogInfo("******************** Record read: " : firstline, "JobControl")
CLOSESEQ H.FinaltestOut.txt
解决方案
第 1 步:您可以使用执行命令活动来分类此文件。第 2 步:然后使用用户变量活动来获取执行命令输出。第 3 步:使用 UV 活动中的 Field 函数来获取所需的字段。
注意:这里我们只在执行命令活动中使用 cat 命令。它是解决您的问题的简单方法。
推荐阅读
- python - 如何使 PATCH 方法适用于 Django 应用程序中的部分更新?没有 ImageField 更新,它不起作用
- laravel - 部署到服务器时获取 MethodNotAllowedHttpException
- xml - getPrettyFormat() 不适用于 Google Apps 脚本中的某些 SVG 图像
- c++ - 从另一个构造函数的主体调用构造函数
- sql-server - 明确引用不明确的列别名的最不麻烦的方法?
- excel - 自动过滤和粘贴完成后使用自动过滤和取消过滤进行特殊粘贴
- ruby-on-rails - 使用 Rails 迁移删除外键列
- python - scikit 中的特征脸与训练图像不对应
- python - Python - 使用操作系统重命名文件两次
- java - @Inject Twitter bean 一个 connectionRepository 问题