2015-05-17 95 views
1

我想編寫一個.bat文件,將目錄a中特定擴展名* .bak的最後兩個修改文件移動到不同的目錄。批處理文件 - 複製兩個最後修改的文件

我用這條線來複制文件:

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 
相關問題