Batch file 批处理文件-复制最后修改的两个文件

Batch file 批处理文件-复制最后修改的两个文件,batch-file,Batch File,我想编写一个.bat文件,将目录a中特定扩展名*.bak的最后两个修改文件移动到另一个目录 我使用此行复制文件: robocopy D:\DailyBackup\IDMRObjects\SQLBackups SQLBackups *.bak /S 我是新来的,不知道如何调整它来获得我需要的结果 谢谢未经测试: @echo off for /f "tokens=* delims=" %%# in (' dir /a:-d /o:-d /t:a /b "D:\DailyBackup\IDMR

我想编写一个.bat文件,将目录a中特定扩展名*.bak的最后两个修改文件移动到另一个目录

我使用此行复制文件:

robocopy D:\DailyBackup\IDMRObjects\SQLBackups SQLBackups *.bak /S
我是新来的,不知道如何调整它来获得我需要的结果

谢谢

未经测试:

@echo off


for /f "tokens=* delims=" %%# in (' dir /a:-d /o:-d /t:a  /b "D:\DailyBackup\IDMRObjects\SQLBackups SQLBackups\*.bak"') do (
   if not defined last set "pre_last=%%~f#"
   set "last=%%~f#"
)
copy /y "%last%" "c:\new_dir"
copy /y "%pre_last%" "c:\new_dir"
@echo off
setlocal EnableDelayedExpansion

cd "D:\DailyBackup\IDMRObjects\SQLBackups"
set copied=0
for /F "delims=" %%a in ('dir /B /A-D /O-D /T:W *.bak') do (
   copy "%%a" "other\dir"
   set /A copied+=1
   if !copied! equ 2 goto break
)
:break