DOS: 使用DOS命令获取当前文件夹最后一个创建的文件名


REM 使用 Batch/ Cmd / Dos Command 脚本 去找到刚刚创建的文件。
for
/f %%i in ('dir /b/a-d/od/t:c') do set LAST=%%i echo The most recently created file is %LAST%

/f           syntax-FOR-Command Results

/b           只获取文件名

/a-d   文件

/od    order by date.按时间排序

/t:c       基于创建的时间

局限性:如果文件名中有空格则会出错。

解决方法:改写默认的分隔符。

for /f "delims=" %%i IN ...

最终:

for /f "delims=" %%i in ('dir /b/a-d/od/t:c') do set LAST=%%i 
echo The most recently created file is %LAST%

参考链接:

https://devblogs.microsoft.com/oldnewthing/20120801-00/?p=6993

https://stackoverflow.com/questions/5553040/batch-file-for-loop-with-spaces-in-dir-name