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 (.batfile) - tempo ( tempo curto em
intl.cpl) na máquina deve estar no formatoH:mm tt(H = 24), pois a saída dedirdepende 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
schtasksexternal (%windir%\system32\schtasks.exe)