PowerShell原始FTP

时间:2011-06-07 16:59:13

标签: powershell ftp mainframe jcl

我希望使用FTP来编写大型机作业流。为此,我可以通过FTP连接到大型机并运行以下命令:

QUOTE TYPE E
QUOTE SITE FILETYPE=JES
PUT myjob.jcl

那么,我将如何在PowerShell中执行此操作?我已经阅读了很多标准的FTP传输,但我还没有看到任何关于自定义准备调用的信息。

感谢阅读。

修改

以下是我提出的解决方案,根据此处的答案和this article

@echo off
echo user %1> ftpcmd.dat
echo %2>> ftpcmd.dat
echo QUOTE TYPE E>> ftpcmd.dat
echo QUOTE SITE FILETYPE=JES>> ftpcmd.dat
echo put %3>> ftpcmd.dat
echo quit>> ftpcmd.dat
ftp -n -s:ftpcmd.dat %4
del ftpcmd.dat

用法:

C:\>fileup user123 pa$$word myfile.txt ftp.server.com

2 个答案:

答案 0 :(得分:3)

您可以为FTP使用-s开关并指定包含要运行的命令的文件吗?

  -s:filename     Specifies a text file containing FTP commands; the
                  commands will automatically run after FTP starts.

然后您可以在PowerShell中将其称为

ftp -s:<myscript> <host>

答案 1 :(得分:0)

如果您对.NET感到满意并希望以编程方式进行,那么这里有类似的问题/答案:

Upload files with FTP using PowerShell

几乎可以归结为使用System.Net.FtpWebRequest来完成工作。乍一看似乎相当直接。