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

[已解决]批处理怎样比对文件删除重复文件只保留最新创建?

把对比前面相同之后,根据创建日期时间删除老的文件。我需要把BAT文件放在《座套DXF》这个文件夹下,所以需要包含所有子目录

AD1021-G1101-AA-110-主副背料-四向-820.dxf--------------------------------------创建日期2015-8-7 17:10
AD1021-G1101-AA-110-主副背料-四向-821.dxf--------------------------------------创建日期2015-8-7 17:12
AD1021-G1101-AA-110-主副背料-四向-(0000)-821.dxf-----------------------------创建日期2015-8-7 17:15
AD1021-G1101-AA-110-主副背料-四向-(00100)-821.dxf---------------------------创建日期2015-8-7 17:18
AD1021-G1101-AA-110-主副背料-四向-(000f0)-821.dxf----------------------------创建日期2015-8-7 17:20
求大神来条代码,上面这些文件我要求执行代码之后,只留下《创建日期2015-8-7 17:20》这条,对比前面“AD1021-G1101-AA-110-主副背料-四向”有规率的6项5个“-”,这六项相同的情况下,第六个“-”开始不对比,删除只剩余最晚创建的文件。
我有很多的文件及文件夹,同一个文件夹中没有相似的文件,只有在同一个文件中有相似的文件,只要保留一个最新的文件,其余的删除。

TOP

本帖最后由 511182890 于 2015-8-8 15:40 编辑

回复 2# pcl_test


    我有几千个文件夹,50W+的文件,这样不行,只是复制单独的出来,还是要手动去删除。

TOP

回复 5# pcl_test


    不对的,这个只能在同文件夹下执行,我是要包括子文件夹的,我加上了/b /s就变成复制原有文件了

TOP

回复 7# pcl_test


   你的代码,放在有文件的文件夹中是可以复制的,如果放在上一层文件夹中,就不会复制。
我是有很多文件及很多文件夹,不同文件夹中没有相似的文件,只有在同一个文件夹中的文件有可能会相似,所以要保留一个最新的文件。

TOP

回复 10# 慕夜蓝化


    不行,结果这样的
  1. C:\Documents and Settings\Administrator\桌面\新建文件夹 (2)>echo off
  2. 找不到文件
  3. 请按任意键继续. . .
复制代码

TOP

回复 9# pcl_test


    帮忙改个完整的。谢谢,

TOP

[文件操作] [已解决]批处理怎样实现相似文件名校对只留最新文件删除其余文件?

本帖最后由 511182890 于 2015-9-22 14:21 编辑

AD1021-G1101-AA-110-主副背料-四向-820.dxf--------------------------------------创建日期2015-8-7 17:10
AD1021-G1101-AA-110-主副背料-四向-821.dxf--------------------------------------创建日期2015-8-7 17:12
AD1021-G1101-AA-110-主副背料-四向-(0000)-821.dxf-----------------------------创建日期2015-8-7 17:15
AD1021-G1101-AA-110-主副背料-四向-(00100)-821.dxf---------------------------创建日期2015-8-7 17:18
AD1021-G1101-AA-110-主副背料-四向-(000f0)-821.dxf----------------------------创建日期2015-8-7 17:20
求大神来条代码,上面这些文件我要求执行代码之后,只留下《创建日期2015-8-7 17:20》这条,对比前面“AD1021-G1101-AA-110-主副背料-四向”有规率的6项5个“-”,这六项相同的情况下,第六个“-”开始不对比,删除只剩余最晚创建的文件。
我有很多的文件及文件夹,不同文件夹中没有相似的文件,只有在同一个文件中有相似的文件,只要保留一个最新的文件,其余的删除。

回复 2# xudaweb


    不对比我有别的文件的啊,那不是把我别的文件只删除的一个文件夹只留一个文件?

TOP

[已解决]批处理怎样比对文件删除重复文件只保留最新创建?

把对比前面相同之后,根据创建日期时间删除老的文件。我需要把BAT文件放在《座套DXF》这个文件夹下,所以需要包含所有子目录
-
-
-
-
-
-
-
  1. AD1021-G1101-AA-110-主副背料-四向-820.dxf--------------------------------------创建日期2015-8-7 17:10
  2. AD1021-G1101-AA-110-主副背料-四向-821.dxf--------------------------------------创建日期2015-8-7 17:12
  3. AD1021-G1101-AA-110-主副背料-四向-(0000)-821.dxf-----------------------------创建日期2015-8-7 17:15
  4. AD1021-G1101-AA-110-主副背料-四向-(00100)-821.dxf---------------------------创建日期2015-8-7 17:18
  5. AD1021-G1101-AA-110-主副背料-四向-(000f0)-821.dxf----------------------------创建日期2015-8-7 17:20
复制代码
上面的是文件
  1. @echo off
  2. for /f "tokens=1-7delims=-" %%a in ('dir /b /s /o-d /tw *-*.dxf') do (
  3.         if defined %%a-%%b-%%c-%%d-%%e-%%f (
  4.                 del /f /q "%%a-%%b-%%c-%%d-%%e-%%f-%%g"
  5.         ) else set %%a-%%b-%%c-%%d-%%e-%%f=1
  6. )
复制代码
已有代码求修改,比对上面文件删除重复文件只保留最新创建,如上面就保留《AD1021-G1101-AA-110-主副背料-四向-(000f0)-821.dxf----------------------------创建日期2015-8-7 17:20》,比对第六个“-”之前的内容相同只保留最新创建文件。
所有文件都是DXF格式,有很多个文件夹,只比对同一个文件夹下,跨文件夹的不比对。

TOP

回复 2# pcl_test


    没有解决啊,我只能重复发啊!

TOP

回复 2# pcl_test


    老大我从新编辑了帖子麻烦大神帮忙研究研究。

TOP

回复 21# flyinnet9


    谢谢大神。可以OK

TOP

返回列表