Obtenha a "última" versão de um diretório de diretórios
Uma questão interessante, já que é o lote do Windows! dir é seu amigo aqui; tomar emprestado de resposta de PabloG sobre SO :
@ECHO OFF
FOR /F %%I IN ('DIR *.* /B /O:G-N') DO ECHO %%I & EXIT /B
Coloque em RootFolder denominado lastversion.bat (ou qualquer outro). Você pode testar invocando a partir de cmd.exe 1 .
Por favor, note que eu só testei isso usando um número muito muito limitado de diretórios nomeados por diretório "version-like" .
Explicação
FOR /F %%I IN - Loop ( FOR ) através do seguinte conjunto de arquivos ( /F ), usando a variável I ( %%I ) 2
'DIR *.* /B /O:G-N' - Lista todos os arquivos ( *.* ) no diretório, no formato simples ( /B ), classificação ( /O: ) diretório alfabético 3 ( -N ) -primeiro ( G ) 4
DO ECHO %%I & EXIT /B - Imprima o primeiro nome do arquivo e finalize imediatamente ( EXIT ) somente o arquivo em lote ( /B )
Notas de rodapé adicionais
1 @ECHO OFF suprime o eco de comando , mas você provavelmente sabia que já
2 %%I - use dois sinais de porcentagem dentro de um arquivo de lote, ou se de um prompt interativo, apenas %I
3 inverter alfabeticamente significa que não estamos preocupados com qual versão foi realmente escrita para durar e apenas pegar o número de versão mais alto; isso pode não ser desejável
4 diretórios de grupos primeiro para que arquivos simples sejam classificados no final e, portanto, ignorados