[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程批处理在线视频分享
返回列表 发帖

50红包求助批处理把前一天生成的文件复制到指定文件夹

是这样,我想把一些系统每天生成的文件自动的复制到指定文件夹,比如刚生成的文件命名格式是1806122113....(最后几个字母也有差别).txt,每天生成的数量不固定,就让他第二天早上八点执行,处理前一天生成的,我想请问一下这个该怎么写啊?

50红包求助大神!!!!

是这样,我想把一些系统每天生成的文件自动的复制到指定文件夹,比如刚生成的文件命名格式是1806122113....(最后几个字母也有差别).txt,每天生成的数量不固定,就让他第二天早上八点执行,处理前一天生成的,我想请问一下这个该怎么写啊?

TOP

系统每天生成的文件固定在某个文件夹里面吗?
还是分散在好多个不同的文件夹,甚至不同的分区下面?这种情况需要全盘搜索,比较麻烦。
【扫描二维码捐助论坛的朋友请留言注明论坛账号】http://bbs.bathome.net/thread-10403-1-1.html
【批处理在线视频分享】http://bbs.bathome.net/thread-31727-1-1.html
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html

TOP

本帖最后由 yhcfsr 于 2018-6-13 09:58 编辑


  • 留下QQ方便沟通细节
  • 指明要检索的目录,如D:\AAA,C:\BBB
  • 指明系统版本,即BAT的应用环境,如XP,  WIN7 32位, WIN7 64位,  WIN8 ,WIN10等
QQ 33892006

TOP

本帖最后由 digger 于 2018-6-13 10:37 编辑

以下代码实现:总是复制脚本所在目录下(目录可改变)最新日期(这个是通过dir自动排序实现的,因为你的都是数字开头)且这个日期文件数少于4个(数目可自行定义)的TXT到d:\test目录下:但是脚本所在路径下的txt文件数不要超过100000000000000个
  1. @echo off&setlocal enabledelayedexpansion
  2. set n=0
  3. for /f "delims=" %%i in ('dir /b *.txt^|sort ^/+100000000000000') do (
  4.      set flag=%%i
  5.      set flag=!flag:~0,6!
  6.      if "!n!"=="0" set name6=!flag!&set n=1
  7.      if "!flag!"=="!name6!" (
  8.          set/a m+=1
  9.          set "#!m!=%%i"
  10.      ) else (
  11.        if !m! LSS 4 (
  12.           if not exist "d:\test\!#1!" (
  13.              for /l %%j in (1,1,!m!) do copy "!#%%j!" "d:\test"
  14.              pause&exit
  15.           )
  16.         )
  17.       
  18.      )
  19. )
  20. if not exist "d:\test\!#1!" (
  21.              for /l %%j in (1,1,!m!) do copy "!#%%j!" "d:\test"
  22. )
  23. pause
复制代码

TOP

回复 5# digger

留个联系方式呗哥,还有点细节想问,另外给您报酬:)

TOP

回复  digger

留个联系方式呗哥,还有点细节想问,另外给您报酬
战北 发表于 2018-6-13 11:35

我站内发短消息给你了,你可以在页面右上角查看  短消息  就可以看到了

TOP

本帖最后由 yhcfsr 于 2018-6-13 11:54 编辑
  1. @echo off
  2. ::设置检索源目录,多个目录用空格隔开
  3. set "sd="d:\test" "d:\cmd""
  4. ::目的目录
  5. set "dd=d:\备份"
  6. if not exist "%dd%" md "%dd%"
  7. for /f %%a in ('datex -o -1') do set _date=%%a
  8. for /f "delims=" %%a in ('dir /a-d/s/b %sd%') do (
  9. for /f %%i in ('dir /tc "%%a"^|findstr /ri "[0-9]*-[0-9]*-[0-9]*" ') do (
  10. if "%%i" equ "%_date%" copy /y "%%a" "%dd%"
  11. )
  12. )
  13. pause
复制代码
用到第三方命令行DateX
下载后,将DateX与BAT放在一起即可
QQ 33892006

TOP

返回列表