× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



On 1/16/2014 10:11 AM, Alan Cassidy wrote:
I know there is a way to do this, I've tried various purported examples in a Web search, but they're either not working or "too big to trust" at this stage in my knowledge of Windows batch, and I don't see specifics for this in the PC-Tech list archives. (Parameterized FTP yes, this specific task no). (Payback for trying to avoid Windows programming).

I need to set up a scheduled Windows-7 batch script to create an FTP script to run to automate an upload to IBMi of all the files in a directory.

I've been able to pipe the commands with the >> operator to an FTP script file, but I need to use the DIR directory output to generate the "PUT filepath" lines for this script.

Anybody got an example script? Or a way to generate that directory list with a "PUT " in front of the path name to the output file?

The DIR /s /p drive:path>>outfile.txt pipes the list of path names but I need that "PUT".

Here is how I uploaded RPGUnit to my IBM i. Perhaps this will give you
some ideas:

@echo off
rem build the ftp script

rem
set base=c:\addons\rpgunit-0.3.2-src
set sub=rpgunit-0.3.2
set lib=RPGUNIT
set script=%base%\ftpscript.txt
set trace=%base%\ftptrace.txt

rem
rem build ftp script
echo Script file is %script%
del %script%
del %trace%
echo user MYUSER MYPASS > %script%
echo quote site namefmt 1 >> %script%
echo ascii >> %script%

rem move to proper subdirectory and get list of members
for %%f in (%sub%/RPGUNIT1.FILE/*.MBR) do echo put
%base%\%sub%\RPGUNIT1.FILE\%%f /qsys.lib/%lib%.lib/RPGUNIT1.file/%%f >>
%script%
for %%f in (%sub%/RPGUNITC1.FILE/*.MBR) do echo put
%base%\%sub%\RPGUNITC1.FILE\%%f /qsys.lib/%lib%.lib/RPGUNITC1.file/%%f
%script%
for %%f in (%sub%/RPGUNITF1.FILE/*.MBR) do echo put
%base%\%sub%\RPGUNITF1.FILE\%%f /qsys.lib/%lib%.lib/RPGUNITF1.file/%%f
%script%
for %%f in (%sub%/RPGUNITT1.FILE/*.MBR) do echo put
%base%\%sub%\RPGUNITT1.FILE\%%f /qsys.lib/%lib%.lib/RPGUNITT1.file/%%f
%script%
for %%f in (%sub%/RPGUNITY1.FILE/*.MBR) do echo put
%base%\%sub%\RPGUNITY1.FILE\%%f /qsys.lib/%lib%.lib/RPGUNITY1.file/%%f
%script%

rem finish up the ftp script
echo quit >> %script%

rem
rem process ftp script
ftp -n -s:ftpscript.txt MYIBMI.MYCOMPANY.COM > %trace%

rem
rem clean up after ourselves.
rem keep either or both files for debugging purposes
del %script%
del %trace%
:end_script

--buck

As an Amazon Associate we earn from qualifying purchases.

This thread ...

Follow-Ups:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.