批处理文件将一个目录中最近修改的文件复制到另一个目录

问题描述 投票:0回答:1

我想使用批处理文件将目录中最近修改的文件复制到另一个目录。

我可以复制最近修改的文件,但我想复制多个文件。

@echo off
set source="D:\source"
set target="D:\target"

FOR /F "delims=" %%I IN ('DIR %source%\*.* /A:-D /O:-D /B') DO COPY %source%\"%%I" %target% & echo %%I & GOTO :END
:END
TIMEOUT 4

有没有办法设置复制时的文件数量?

batch-file
1个回答
0
投票

最好通过引入计数器变量和循环来复制特定数量的文件,请检查一下:

@echo off
setlocal enabledelayedexpansion

set "source=D:\source"
set "target=D:\target"
set count=0
set maxCount=5

FOR /F "delims=" %%I IN ('DIR %source%\*.* /A:-D /O:-D /B') DO (
    COPY "%source%\%%I" "%target%\"
    echo Copied: %%I
    set /a count+=1
    IF !count! EQU !maxCount! GOTO :END
)

:END
TIMEOUT 4
© www.soinside.com 2019 - 2024. All rights reserved.