[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文本处理] 批处理如何列出相同修改时间的文件,并删除较旧的文件

请各位大神帮忙解决下
  1. @echo off
  2. echo 开始复制c盘copy目录里5天前的文件到e盘目录里的back
  3. forfiles /p "c:\copy" /s /m *.* /d -5 /c "cmd /c copy @path E:\back"
  4. set size=50106127360
  5.         for /f "tokens=2 delims==" %%a in ('wmic LogicalDisk where "DeviceID='E:'" get FreeSpace /value') do (
  6.                 if %%a gtr %size% (
  7.                         echo e盘大于50GB
  8.                 ) else if %%a lss %size% (
  9.                         forfiles /p E:\back /s /m *.* /d -15 /c "cmd /c del @file"
  10. echo 已删除15天前的文件
  11.                 ) else (
  12.                         echo e盘等于50GB
  13.                 )
  14.         )
  15. )
  16. ping 127.0.0.1 -n 6 >nul
复制代码
例如 我只想保留那份下午时间最新的文件
这是我之前写的批处理,由于业务要求,现在需要改下语句, 要列出相同修改的时间文件,并删除较旧的文件,保留最新的一份文件,每个日期都执行一样的操作,确保每一天都只保留一份最新的文件

返回列表