Ah, achei:
for /f %%x in ('dir *.exe /B /O:-D') do set NEWEST_EXE & goto DONE
:DONE
Isso seria muito rápido no Linux, mas eu não estou familiarizado o suficiente com o sabor do Windows de scripts em lote.
Basicamente, quero procurar uma série de arquivos que correspondam a um determinado caractere curinga e obter aquele com a data de modificação mais recente.
Eu cheguei até onde:
for %%X in (*.exe) do (
REM Do stuff....
)
Mas não tenho certeza de que tipo de operadores de comparação existem, ou se há uma maneira melhor de fazer isso.
Alguém oferece alguma boa solução? O ideal seria envolver uma instalação simples do Vista; então nenhum truque especial como cygwin / etc.
Há quase certamente uma maneira mais sensata de fazer isso no PowerShell.
Mas se tem que ser cmd.exe:
FOR /f %f IN ('DIR /b /od *.exe') DO @SET last=%f
ECHO %last%
DIR /b
lista apenas o nome do arquivo, como ls -1
faria; o /od
é, naturalmente, ordem de data.
Então, a última iteração define o nome do último arquivo da lista.
Tags windows-vista cmd.exe