带有命令的 FTP 到大型机数据集

Posted

技术标签:

【中文标题】带有命令的 FTP 到大型机数据集【英文标题】:FTP with command to mainframe dataset 【发布时间】:2020-02-15 01:51:14 【问题描述】:

有没有办法将文件 FTP 到大型机数据集并运行这样的命令?

“站点记录=150”

我可以使用一个名为 Fluent FTP 的 FTP 库来实现。除了使用使用 C# 的第三方库之外,还有其他免费库支持这种或其他方式来使用代码吗?

【问题讨论】:

如果可以使用 FluentFTP,为什么还要使用其他库? @MartinPrikryl 偶尔会出现一些套接字错误,这看起来是库中现有的错误,但尚未修复,所以我只是在寻找备用替代库。 该信息应编辑到您的问题中,而不是作为评论发布。尽管您可能还想发布有关错误的详细信息。也许不是你想的那样。这可能是XY problem。 那么您反对使用每个 Windows 操作系统都包含的FTP.exe 吗? 【参考方案1】:

“z/OS 通信服务器:IP 用户指南和命令”。 主题:SIte 子命令 - 向主机发送特定于站点的信息。

链接:https://www.ibm.com/support/knowledgecenter/SSLTBW_2.1.0/com.ibm.zos.v2r1.halu001/site.htm#site

设置记录长度的正确命令应该是“SITE LRecl=150”

【讨论】:

【参考方案2】:

您可以研究其他 FTP 库,例如 edtFTPnet/Free:

https://enterprisedt.com/products/edtftpnet/

但是,有几个问题:

    您是否应该通过文件传输与大型机交互?文件传输本质上是面向批处理的。如果您的最终用户有面向批处理的期望,好吧,这很公平。但现在是这样吗,将来还会这样吗?大型机为双向、事务性、面向在线的交互提供了多种选择,因此您不必在业务流程中插入不必要/不想要的延迟(如果您正在尝试这样做或至少要保持这种延迟)。

    即使您必须使用文件传输,如何切换到 REST API 交互?如果所讨论的大型机正在运行 z/OS,则 z/OS 管理工具 (z/OSMF) 提供“z/OS 数据集和文件 REST 接口”,根本不需要任何额外的 FTP 库。 z/OSMF 作为 IBM 支持的标准功能包含在基本 z/OS 操作系统许可中,无需额外费用。所有 IBM 支持的 z/OS 版本(以及一些现在不受支持的旧 z/OS 版本)都包括 z/OSMF。 IBM z/OSMF 文档可在此处获得(假定为 z/OS 2.4,否则此链接可能会更改):

https://www.ibm.com/support/knowledgecenter/en/SSLTBW_2.4.0/com.ibm.zos.v2r4.izu/izu.htm

【讨论】:

这并不能真正回答问题。你怎么知道有用户。也许这是一个批处理环境,最后 FTPs 一个文件。 总是最终用户,在某个地方,也许 X 步骤被删除。否则,为什么要做任何计算?是的,这正是问题所在:最终用户是否有面向批处理的期望?如果他们这样做,那么也许 FTP 是可以接受的。如果他们不这样做,而且他们经常不这样做,那么 FTP 很可能是一个糟糕的选择。

以上是关于带有命令的 FTP 到大型机数据集的主要内容,如果未能解决你的问题,请参考以下文章

使用 java ftp 检查 mainfame 上是不是存在数据集

使用 C# 到 FTP 文件到大型机,包括数据集 - 将 FTP 脚本翻译成 FtpWebRequest 代码

尝试使用 python 脚本将 FTP 文件传输到大型机服务器,但在大型机数据集结束时获取特殊字符

将文件作为 TAPE 数据集 SFTP 到大型机

带有大型数据集的 SQL 插入

带有异步数据存储的 GridX Tree Expando REST 调用(大型数据集)