Skip to main content

cmd.exe - Windows Batch Scripting: Newest File Matching a Pattern


This would be lightning quick in linux, but I'm not familiar enough with windows flavour of batch scripting.


Basically I want to look for a series of files matching a certain wildcard, and get the one with the most recent modified date.


I've gotten as far as:


for %%X in (*.exe) do (
REM Do stuff....
)

But I'm not sure what manner of comparison operators there are, or if there's a better way of doing this.


Anyone offer up any good solutions? Ideally it would involve a vanilla install of Vista; so no special trickery like cygwin/etc.



Answer



Ah, found it:


for /f %%x in ('dir *.exe /B /O:-D') do set NEWEST_EXE & goto DONE

:DONE

Comments