down.bat
@ECHO ON
IF "%3"=="" GOTO HELP
IF "%2"=="" GOTO HELP
IF "%1"=="" GOTO HELP
SET FILENAME=F_%3
:--- create file
ECHO OPEN 192.168.10.2>>C:\FTPTXT\%FILENAME%.txt
ECHO USER V#PAN xsw22wsx>>C:\FTPTXT\%FILENAME%.txt
ECHO quote type c 932>>C:\FTPTXT\%FILENAME%.txt
ECHO GET %1/%2.%3 C:\RETSRC\%3.TXT>>C:\FTPTXT\%FILENAME%.txt
ECHO QUIT>>C:\FTPTXT\%FILENAME%.txt
ECHO.>>C:\FTPTXT\%FILENAME%.txt
:--- ftp
ftp -s:c:\FTPTXT\%FILENAME%.txt -n >C:\LOG.TXT
GOTO END
:HELP
ECHO the batch has three parameter,all parameter must have value.
ECHO.
:END
cl(down)
PGM PARM(&LIB &FIL &MEM)
DCL VAR(&LIB) TYPE(*CHAR) LEN(10)
DCL VAR(&FIL) TYPE(*CHAR) LEN(10)
DCL VAR(&MEM) TYPE(*CHAR) LEN(10)
DCL VAR(&CMD) TYPE(*CHAR) LEN(60) +
VALUE('C:/DOWN.BAT')
CHGVAR VAR(&CMD) VALUE(&CMD *BCAT ' ' *BCAT &LIB +
*BCAT ' ' *BCAT &FIL *BCAT ' ' *BCAT &MEM)
STRPCO
MONMSG MSGID(CPF0000)
STRPCCMD PCCMD(&CMD) PAUSE(*YES)
ENDPGM
bat中的文件夹要事先建好。要注意的还有CCSID与PC所对应字符集。
这是个下载指定的member的程序。当然也可以下载整个LIB下的所有source,把cl改一下就可以了。
如下:
PGM PARM(&LIB &FILE)
DCL VAR(&LIB) TYPE(*CHAR) LEN(10)
DCL VAR(&FILE) TYPE(*CHAR) LEN(10)
DCL VAR(&CMD) TYPE(*CHAR) LEN(60)
DCL VAR(&FIL) TYPE(*CHAR) LEN(12) +
VALUE('C:/DOWN.BAT')
DCLF FILE(I#PAN/WORKFILE)
DSPFD FILE(&LIB/&FILE) TYPE(*MBRLIST) +
OUTPUT(*OUTFILE) OUTFILE(I#PAN/WORKFILE)
MONMSG MSGID(CPF0000)
LOOP: RCVF RCDFMT(QWHFDML)
MONMSG MSGID(CPF0000) EXEC(GOTO CMDLBL(END))
CHGVAR VAR(&CMD) VALUE(' ')
CHGVAR VAR(&CMD) VALUE(&CMD *TCAT &FIL +
*BCAT ' ' *BCAT &MLLIB *BCAT ' ' *BCAT +
&MLFILE *BCAT ' ' *BCAT &MLNAME)
STRPCO
MONMSG MSGID(CPF0000)
STRPCCMD PCCMD(&CMD) PAUSE(*NO)
GOTO CMDLBL(LOOP)
END:
ENDPGM
这种FTP下载的缺点是下载速度慢。
阅读(1439) | 评论(0) | 转发(0) |