fiz o cadastro do site só pra agradecer a comunidade. Resolvi um probleminha chato aqui com ajuda desse tópico.
Só deixando uma colaboração, hoje em 26/09/2023, existe uma versão portable do winscp, o que me salvou pois em alguns servidores que precisava usar o processo não tinha permissao para instalar nada e tambem não tinha ja instalado nas maquinas.
Deixo abaixo meu modelo que faz download e upload. No caso do download ele faz o delete dos arquivos apos baixar, e estou apontando o winscp.com do portable.
/* Para Download */
@echo off
:: Informe aqui o caminho para o WinScp:
set "Winscp=C:\Temp\WinSCP-6.1.2-Portable\WinSCP.com"
:: Informe seu Servidor FTP
set Servidor=
:: Informe o nome do usuario do seu FTP:
set Usuario=
:: Informe a senha do seu FTP:
set Senha=
:: Informe a Pasta remota:
set PastaR=/Upload
:: Informe a extensão dos arquivos que quer:
set Extensao=*.txt
:: Informe a Pasta Local onde deseja salvar seus arquivos remotos:
set PastaL=c:\Temp\Recebidos
IF /i not Exist "%PastaL%" md "%PastaL%"
"%Winscp%" /command "open ""ftp://%Usuario%:%Senha%@%Servidor%""" "get ""%PastaR%/*"" -delete -filemask=%Extensao%|*\ ""%PastaL%\""" "exit"
pause
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
/* Para Upload */
@echo off
:: Informe aqui o caminho para o WinScp:
set "Winscp=C:\Temp\WinSCP-6.1.2-Portable\WinSCP.com"
:: Informe seu Servidor FTP
set Servidor=
:: Informe o nome do usuario do seu FTP:
set Usuario=
:: Informe a senha do seu FTP:
set Senha=
:: Informe a Pasta remota:
set PastaR=/Upload
:: Informe a extensão dos arquivos que quer:
set Extensao=*.txt
:: Informe a Pasta Local onde deseja salvar seus arquivos remotos:
set PastaL=C:\temp\Enviados
IF /i not Exist "%PastaL%" md "%PastaL%"
"%Winscp%" /command "open ""ftp://%Usuario%:%Senha%@%Servidor%""" "put ""%PastaL%\"" -filemask=%Extensao% ""%PastaR%""" "exit"
pause