2015-05-17 7 views
1

Я хотел бы написать .bat-файл, чтобы переместить два последних измененных файла определенного расширения * .bak в каталог a в другой каталог.Пакетный файл - копировать два последних измененных файла

Я использовал эту строку, чтобы скопировать файлы:

robocopy D:\DailyBackup\IDMRObjects\SQLBackups SQLBackups *.bak /S 

Я новичок в этом и не имею ни малейшего представления о том, как настроить эту функцию, чтобы получить результат, что мне нужно.

Благодаря

ответ

0

не тестировалось:

@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" 
0
@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 
Смежные вопросы