none
请帮忙写个批处理 RRS feed

  • 问题

  • 我有一些文件,文件名以日期命名(比如20200118.jpg;20200119.jpg...),想用批处理根据当前日期拷贝这个目录里面相对应当前日期的文件去另外一个目录,请教高手,谢谢!
    2020年1月17日 1:01

答案

全部回复

  • 如果文件的创建日期就是文件名里的日期的话

    robocopy c:\source c:\destination *.* /MAXAGE:20190101 /MINAGE:20191231

    如果不是的话,参考

    https://serverfault.com/questions/506392/powershell-filter-files-by-date-in-name



    Visual C++ MVP

    2020年1月17日 3:05
    版主
  • 大师,我英语不好,能帮忙一下吗?

    我这里的文件创建日期和文件名日期没关联。只是想用文件名来区分是哪一天的文件,然后根据当前日期和以日期为文件名的文件进行比对,如果两者相同,则拷贝这个文件去另外的目录。十分感谢!

    下面这段代码是我结合网上的资料写的,但是结果是把文件夹里最后一个文件拷贝出来了,还能加个什么条件来输出正确日期的文件?

    @echo off
    setlocal enabledelayedexpansion 
    set YMD=%date:~6,4%%date:~0,2%%date:~3,2%
    echo %YMD%
    pause

    cd d:\pic
    for /f "tokens=*" %%i in ('dir/b/a') do (set x=%%~ni)
    echo %x%
    pause

    if "%x%"=="%YMD%" (echo ok) else echo no 

    for /f "tokens=*" %%j in ('dir/b/a') do (set h=%%j)
    echo %h%

    copy /y "%h%" "d:\EHSCalendar"

    pause

    2020年1月17日 5:59