Usuário com melhor resposta
Identificar hora (.BAT)

Pergunta
-
Esse arquivo que faço o backup pelo agendador é realizado de duas em duas horas até uma determinada hora, tem como incrementar neste bat, quando for 20:00 que é a ultima vez que ele é executado alem de fazer o backup normal, copiar para outra unidade.
Script:
@echo off SET ARQUIVO=G:\PastaGeral\arquivo.doc SET PASTA=G:\Backup\ ::Pega partes das datas for %%A in (%date%) do (set dt=%%A) set mes=%dt:~0,2% set dia=%dt:~3,2% set ano=%dt:~6,4% ::Verifica se pasta existe, cria se não existe IF NOT EXIST %PASTA%%ano% MD %PASTA%%ano% ::Copia arquivo COPY %ARQUIVO% "%PASTA%%ano%\%mes%_%dia%.doc" /Y
tópico original:
Backup
http://social.technet.microsoft.com/Forums/pt-BR/scriptadminpt/thread/5d69196b-5f04-414d-8ad3-a8b9ed8527a4
- Dividir Fábio JrModerator segunda-feira, 19 de março de 2012 12:07 Pergunta aberta em tópico respondido
- Editado Fábio JrModerator segunda-feira, 19 de março de 2012 12:09 Add Links, scripts
Respostas
-
Luiz,
Adicionei a variavel PASTA_20 que é o local para onde deve ser copiado o arquivo quando for 20:00.
Verifique o formato da hora que deve ser 24 horas (8 da noite = 20 horas).
@echo off SET ARQUIVO=G:\PastaGeral\arquivo.doc SET PASTA=G:\Backup\ SET PASTA_20=X:\Backup\ ::Pega partes das datas for %%A in (%date%) do (set dt=%%A) set mes=%dt:~0,2% set dia=%dt:~3,2% set ano=%dt:~6,4% ::Verifica se pasta existe, cria se não existe IF NOT EXIST %PASTA%%ano% MD %PASTA%%ano% ::Copia arquivo COPY %ARQUIVO% "%PASTA%%ano%\%mes%_%dia%.doc" /Y ::Backup das 20:00 set hr=%TIME:~0,2% IF "%hr%"=="20" COPY %ARQUIVO% "%PASTA_20%%ano%\%mes%_%dia%.doc" /Y
Observação:
O comando abaixo pega os dois primeiros caracteres do conteudo da variavel TIME.
%TIME:~0,2%
Fábio de Paula Junior
- Sugerido como Resposta Fábio JrModerator terça-feira, 20 de março de 2012 11:26
- Marcado como Resposta Fábio JrModerator terça-feira, 20 de março de 2012 15:51
Todas as Respostas
-
Luiz,
Adicionei a variavel PASTA_20 que é o local para onde deve ser copiado o arquivo quando for 20:00.
Verifique o formato da hora que deve ser 24 horas (8 da noite = 20 horas).
@echo off SET ARQUIVO=G:\PastaGeral\arquivo.doc SET PASTA=G:\Backup\ SET PASTA_20=X:\Backup\ ::Pega partes das datas for %%A in (%date%) do (set dt=%%A) set mes=%dt:~0,2% set dia=%dt:~3,2% set ano=%dt:~6,4% ::Verifica se pasta existe, cria se não existe IF NOT EXIST %PASTA%%ano% MD %PASTA%%ano% ::Copia arquivo COPY %ARQUIVO% "%PASTA%%ano%\%mes%_%dia%.doc" /Y ::Backup das 20:00 set hr=%TIME:~0,2% IF "%hr%"=="20" COPY %ARQUIVO% "%PASTA_20%%ano%\%mes%_%dia%.doc" /Y
Observação:
O comando abaixo pega os dois primeiros caracteres do conteudo da variavel TIME.
%TIME:~0,2%
Fábio de Paula Junior
- Sugerido como Resposta Fábio JrModerator terça-feira, 20 de março de 2012 11:26
- Marcado como Resposta Fábio JrModerator terça-feira, 20 de março de 2012 15:51
-
-
- Sugerido como Resposta Fábio JrModerator quinta-feira, 22 de março de 2012 12:53
-