@echo off&setlocal enabledelayedexpansion
for /d /r D:\project %%a in (*) do (
cd /d "%%a"
set m=0
for /f "tokens=4" %%i in ('dir /a-d /tc /od^|sort /r') do (
set /a m+=1
if !m!==1 xcopy /i /f "%%i" "e:%%~pi"
)
)
pause
追问上面的语句不太明白。比如在D盘bak文件夹下有1.rar、2.rar、3.rar三个文件,其中3.rar为最新保存的文件,现要用批处理文件实现只复制最新保存的单一文件到E盘bak文件下,语句怎样写?
追答@echo off&setlocal enabledelayedexpansion
for /f "tokens=4" %%i in ('dir /a-d /tc /od *.rar^|sort /r') do (
set /a m+=1
if !m!==1 xcopy /i /f "%%i" "e:bak\%%~pi"
)
pause
追问感谢
再请问一下,如果我要同时作用在两个文件夹呢?例如D盘下另一个bak2