Question

I want to make a batch script able to listen to my ftp server and download files to my computer every time a new file is uploaded on the ftp server.

Any ideas? I use WinSCP.

Was it helpful?

Solution

You can use WinSCP scripting with its synchronize command:

:Loop
winscp.com /command ^
    "option batch abort" ^
    "open <session>" ^
    "synchronize local <local directory> <remote directory>" ^
    "exit"
timeout 10
goto :Loop

On Windows XP and older, use ping -n 10 127.0.0.1 instead of timeout 10.


See also:

OTHER TIPS

Use the /synchronize local switch of WinSCP. It will check the remote server and download any files that don't match a local directory.

 winscp.exe [session] /synchronize local [ <local directory> [ <remote directory> ] ]

Then you can use task manager to run it on a schedule or use it in a batch file in a loop

ex:

 :Loop
 winscp.exe [session] /synchronize local [ <local directory> [ <remote directory> ] ]
 ping -n 10 127.0.0.1
 goto :Loop

will run it every 10 seconds.

Read the Command line options for WinSCP for more.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top