Ir ao conteúdo

Posts recomendados

Postado

Olá

Tenho um arquivo BAT(abaixo) que serve para realizar cópia em 2 pastas uma de BKP e outra BD.

Na pasta BKP ficará uma sequencia de arquivos gerados.

É possível criar um outro BAT que ao ser executado mantenha os últimos 5 arquivos atuais da pasta BKP ( C:\Users\PC\Documents\Backup) ? 

Intenção é criar uma tarefa no windows com esse BAT(limpeza) para ser executado a cada 15 dias.

 

O arquivo BAT de cópia é o seguinte:

<

@echo off

set Origem_BKP=C:\Users\PC\Documents\Arquivo_TESTE.txt
set Destino_BKP=C:\Users\PC\Documents\Backup
set Arquivo=BANCO_%date:~0,2%-%date:~3,2%-%date:~6,10%_%time:~0,2%-%time:~3,2%_


:Sequencia
set /a Contador+=1
set ZContador=0%Contador%
set ZContador=%ZContador:~-2%
if not exist "%Destino_BKP%\%Arquivo%%ZContador%.TXT" (copy /y "%Origem_BKP%" "%Destino_BKP%\%Arquivo%%ZContador%.TXT") else (goto :Sequencia)


set Origem_BD="C:\Users\PC\Documents\Arquivo_TESTE.txt"
set Destino_BD="C:\Users\PC\Documents\BANCO_MDB"

copy "%Origem_BD%" "%Destino_BD%"

pause>

 

Obrigado

Postado

Se eu entendi bem:

  1. manter sempre uma copia de todo os arquivos de uma pasta em outra.
  2. apagar tudo exceto os ultimos 5 arquivos modificados da pasta original.

 

1)

robocopy "C:\Caminho\Para\PastaOrigem" "D:\Caminho\Para\PastaDestino" /E

 

2)

powershell -Command "Get-ChildItem 'C:\caminho\da\pasta' | Sort-Object LastWriteTime -Descending | Select-Object -Skip 5 | Remove-Item"

 

 

você também pode agendar essas 2 tarefas pelo agendador de tarefas.

 

ps: praq diabos você guarda backup no mesmo disco? ou é só de exemplo?

  • Curtir 1
Postado

boa tarde.

1 desses será em rede.

O local fica para o operador responsável em caso de arquivo corrompido.

Caso operador faça alteração inadequada no sistema, terei outros arquivos para repor.

 

Obrigado pela ajuda, vou iniciar as validações.

 

Postado

Se eu entendi corretamente:

Nesse local Destino_BKP (backup 01)  vai ficar os últimos 5 backups

Nesse local Destino_BD (backup 02) vai ficar um backup que vai sempre sobreescrito quando o bat rodar.

 

A linha que apaga tudo menos os últimos 5 backups em Destino_BKP é essa:

 

For /f "skip=5 delims=" %%a in ('dir /b /a-d /o-d "%Destino_BKP%\*"') do del /q "%Destino_BKP%\%%a"

 

Ai o bat ficaria algo assim:

 

@echo off

set Origem_BKP=C:\Users\PC\Documents\Arquivo_TESTE.txt
set Destino_BKP=C:\Users\PC\Documents\Backup
set Arquivo=BANCO_%date:~0,2%-%date:~3,2%-%date:~6,10%_%time:~0,2%-%time:~3,2%_


:Sequencia
set /a Contador+=1
set ZContador=0%Contador%
set ZContador=%ZContador:~-2%
if not exist "%Destino_BKP%\%Arquivo%%ZContador%.TXT" (copy /y "%Origem_BKP%" "%Destino_BKP%\%Arquivo%%ZContador%.TXT") else (goto :Sequencia)

For /f "skip=5 delims=" %%a in ('dir /b /a-d /o-d "%Destino_BKP%\*"') do del /q "%Destino_BKP%\%%a"

set Origem_BD="C:\Users\PC\Documents\Arquivo_TESTE.txt"
set Destino_BD="C:\Users\PC\Documents\BANCO_MDB"

copy "%Origem_BD%" "%Destino_BD%"

pause

 

  • Curtir 1

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...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!