Ir ao conteúdo
  • Cadastre-se

Backup Automático dos arquivos(xmls) do Servidor(FTP)


Ir à solução Resolvido por ricardo_br,

Posts recomendados

eai galera beleza?

então vamos lá, preciso que em meu servidor(FTP) seja feito um backup diário(ou noturno kkk) dos arquivos que tem la, porém preciso que isso seja feito de forma automática, ou seja, sem que alguém vá lá e  de o comando.

os arquivos devem ser transferidos do FTP para a minha maquina(ou pastas de rede) para assim eu poder executar meus processos diários.

a ideia é que por exemplo quando mudar o dia ele pegue todos os arquivos(xmls) do dia anterior. Por exemplo hj é Terça feira dia 21/04/2020 então ele deve fazer o backup dos arquivos de ontem 20/04/2020 entre as hrs 00:00:01 ate as 23:59:59.

 

existe alguma forma de fazer isso?

atualmente fazemos esse backup de forma manual, usando o FileZilla. porém perdemos muito tempo de serviço com isso.

Link para o comentário
Compartilhar em outros sites

Pode fazer um script em powershell ou batch para fazer backup sempre do dia anterior e enviar para o FTP ai você usa o Agendador de tarefas para executar o script todos os dias.

 

O backup deve ser feito do FTP para sua máquina correto? Porque o backup só deve ser feito dos arquivos do dia anterior e não todos os arquivos?

Link para o comentário
Compartilhar em outros sites

  • Solução

Eu consegui fazer o que você quer em meu ambiente de teste. O que usei foi o programa Winscp, um arquivo batch (ftp.bat) e um arquivo chamado script.txt com instruções para o Winscp.

 

Meu cenário:

 

Pasta remota: /Teste

Pasta local: %userprofile%\downloads

Data de hoje 29/04/2020

 

Repare que o único arquivo de ontem é Santana2.xmls

 

AumbMIQ.png


 

Arquivo Batch:


@echo off
chcp 1252 > Nul

:: Coloque aqui o caminho para o programa Winscp:
set Winscp="C:\Users\ricar\Downloads\WinSCP-5.17.3-Portable\winscp.com"

:: Coloque aqui a pasta local:
set PLocal="%userprofile%\downloads"

:: Coloque aqui a pasta remota:
set PRemota="Teste"

:: Coloque aqui o caminho para o script:
set Script="%userprofile%\desktop\script.txt"

"%winscp%" /script=%Script%

 

Arquivo script.txt:


open ftp://SeuNomeDeUsuario:[email protected]
cd %PRemota%
lcd %PLocal%
get -neweronly *>=yesterday<=today
exit

 

Executando o batch:

 

ftp.gif

 

Ai é só configurar o Agendador de tarefas para executar o batch todos os dias e vai ter sempre um backup do dia de ontem....

 

 

 

 

 

Link para o comentário
Compartilhar em outros sites

31 minutos atrás, Samuel.ms2112 disse:

@ricardo_br ola obrigado funciou

Mas abusando da sua boa vontade, tem como ele me trazer só os XML? Por exemplo se na HR de copiar tiver um RAR para ele não copiar

Dentro do arquivo Script.txt é só mudar a linha:


get -neweronly *>=yesterday<=today

Para:


get -neweronly *.xmls>=yesterday<=today

Link para o comentário
Compartilhar em outros sites

@ricardo_br ola td bem, o primeiro teste eu realizei em um FTP de teste, onde tem somente 1 arquivo.

hj foi testar no FTP em produção onde ele deveria me trazer 2826 arquivos, porém o mesmo só me retornou 92 arquivos.

 

muitos aquivos podem não ser transferidos por esse método? 

 

mais uma duvida o que seria o comando chcp 1252 > Nul?

Link para o comentário
Compartilhar em outros sites

Deveria transferir todos que você especifiou que sejam *.xmls e que tem data de modificação do dia de ontem. Ou você queria xmls + xml

 

chcp 1252 instrui o batch para aceitar caracteres que tenham acentos brasileiros tipo ã é ü á

 

O comando "-neweronly" faz também com que não sejam baixados arquivos que já existam na pasta local que sejam mais antigos que a versão que já está na pasta local o que fez sentido para mim na hora, mais se sua intenção era outra então remova esse parametro.

Link para o comentário
Compartilhar em outros sites

1 hora atrás, ricardo_br disse:

Deveria transferir todos que você especifiou que sejam *.xmls e que tem data de modificação do dia de ontem. Ou você queria xmls + xml

eu nem coloquei o tipo de arquivo ainda, continua somente com o *

adicionado 4 minutos depois

@ricardo_br image.thumb.png.20b0d29f7991103b768a44a69608c4ea.pngele da um erro

Link para o comentário
Compartilhar em outros sites

Parece que o arquivo "/Lidos/stumessages_06e7c1b0005d100687acc45580ff511a.xml" está corrupto ou sendo usado por alguem no memento da cópia..

 

Tente adicionar essa opção no início do arquivo script.txt:


option batch continue

Ai tente executar o script novamente para ver se ele não trava em erros.

Link para o comentário
Compartilhar em outros sites

7 horas atrás, Samuel.ms2112 disse:

@ricardo_br Sim esta baixando, porém esta gerando vários desses erros, consigo fazer tipo um LOG do que deu erro e mandar por email?

 

Tente mudar essa linha em script.txt


open ftp://SeuNomeDeUsuario:[email protected]

Para:


open ftp://SeuNomeDeUsuario:[email protected] /log=%userprofile%\desktop\LogDoFtp.txt /loglevel=1

Isso vai salvar o log na área de trabalho

 

o loglevel pode ser:

-1= Reduzido

0 = Normal

1 = Depuração

2 = Depuraçao 2

* O depuração 2 deve ser o mais completo

 

Tembém é possível criar o log em formato xml usando /xmllog

 

Fonte: winscp.net

 

Não entendi essa parte de enviar por e-mail, por que você quer enviar o log por e-mail se ele fica no mesmo computador onde você está rodando o script? Mais se você quer ter acesso ao log online por que não faz upload dele para o servidor FTP e depois baixa onde você tiver.

Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

 

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!