você pode classificar o conteúdo do diretório pela criação ( /tc
) date ( /-od
) (descendente, mais novo primeiro)
dir /o-d /tc
em seguida, analise o primeiro ( data ) e / ou o segundo campo ( time ) e compare com a data atual ( %date%
) e tempo ( %time%
) com if
operador de comparação:
for /f "tokens=1,2,5" %a in ('dir /-b /o-d /tc') do @if %a==%date:~4% (if %b==%time:~0,5% (echo %c))
seleciona os campos primeiro ( data ), segundo ( tempo ) e quinto ( nome do arquivo ), se a condição for verdadeira gera o último ( %c
)
notas
-
O
- prefixando uma variável
%
para o localfor
é necessário se o código é colocado em um script (.bat
file) - tempo ( tempo curto em
intl.cpl
) na máquina deve estar no formatoH:mm tt
(H = 24), pois a saída dedir
depende dele -
:~
in%date%
e%time%
dentro do código é o operador de manipulação de string (substring
) para fazer com que seu valor esteja de acordo com o formato de data e hora na saída dedir
- tarefa agendada para verificar eventos em base temporal, e a execução do código / script adequadamente pode ser criada com o comando
schtasks
external (%windir%\system32\schtasks.exe
)