Ce serait une foudre rapide dans linux, mais je ne suis pas assez familier avec Windows save of batch scripting.
Fondamentalement, je veux rechercher une série de fichiers correspondant à un caractère générique, et obtenir celui avec la date de modification la plus récente.
Je suis arrivé jusqu'à:
for %%X in (*.exe) do ( REM Do stuff.... )
Mais je ne suis pas sûr de la façon dont les opérateurs de comparaison sont là, ou s'il existe une meilleure façon de le faire.
Quelqu'un offre-t-il de bonnes solutions? Idéalement, cela impliquerait une installation vanilla de Vista; Donc pas de ruse spéciale comme cygwin / etc.
Ah, l'ai trouvé:
for /f %%x in ('dir *.exe /B /O:-D') do set NEWEST_EXE & goto DONE :DONE
Il y a presque certainement une manière plus judicieuse de le faire dans PowerShell.
Mais si cela doit être cmd.exe:
FOR /f %f IN ('DIR /b /od *.exe') DO @SET last=%f ECHO %last%
DIR /b
répertorie que le nom de fichier, comme ls -1
ferait; Le /od
est bien sûr la date de l'ordre.
Ainsi, la dernière itération définit le nom du dernier fichier dans la liste.