首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >将文件从AS400传输到同一网络中的另一台计算机

将文件从AS400传输到同一网络中的另一台计算机
EN

Stack Overflow用户
提问于 2017-10-10 13:08:34
回答 1查看 2.1K关注 0票数 0

我试图通过AS400命令将表的数据导出到另一台计算机,但我被堆叠在进程的中间。我有一个存储过程,在其中我创建CSV文件,但在完成之后,我需要将该文件传输到另一台计算机(当然,这是连接到AS400的)。

在存储过程中,我使用CPYTOIMPF命令将表数据导出到CSV,并在AS400文件系统上编写了该文件。我不知道是否有一个选项可以直接将文件写入另一台机器。

代码语言:javascript
运行
复制
CALL QSYS2.QCMDEXC(
 'CPYTOIMPF FROMFILE(LIBRARY/TABLE) TOSTMF('/QIBM/UserData/TestFolder/2.CSV') STMFCODPAG(*PCASCII) RCDDLM(*CRLF)'
);

此步骤已完成,文件将写入该目录。

现在,我需要在完成上述命令之后,将该文件传输到连接到AS400的web服务器。

我怎么能这么做?

EN

回答 1

Stack Overflow用户

发布于 2017-10-11 12:28:05

您可以在IBM上使用FTP。

这是一个CL程序

代码语言:javascript
运行
复制
PGM 
  OVRDBF   FILE(INPUT) TOFILE(MYLIB/QCLSRC) MBR(FTPCMDS) 
  OVRDBF   FILE(OUTPUT) TOFILE(MYLIB/QCLSRC) MBR(OUT) 
  FTP      RMTSYS(SYSxxx) 
ENDPGM 

此程序将FTP客户端的输入重写为MYLIB/QCLSRC成员FTPCMDS中的脚本,并重写FTP客户端到MYLIB/QCLSRC成员OUT的输出。脚本的第一行必须包含远程位置的userid和密码。

下面是来自同一个知识中心参考的一个示例脚本:

代码语言:javascript
运行
复制
ITSO ITSO    <== This is the user id and password
CD ITSOLIB1 
SYSCMD CHGCURLIB ITSOLIB2 
GET QCLSRC.BATCHFTP QCLSRC.BATCHFTP (REPLACE 
QUIT 

这不应在您的网络之外使用,因为用户id密码是以纯文本发送的。由于生产用户的id和密码必须存储在源文件中的纯文本中,这也可能是一种安全风险。

此外,Scott还介绍了如何在IBM上使用sshscpsftp,这是一件很长的事情,所以您可能想了解一下这里

一个简短的总结是,scp可能是最简单的方法。但你需要:

  1. 确保安装了操作系统的OpenSSH选项。
  2. 确保将Windows服务器设置为ssh服务器。
  3. 设置用于传输的数字密钥。私钥在客户端,公钥在服务器端。
  4. 使用Pase中的scp fromfile user@host:tofile传输文件。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46667595

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档