找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 26817|回复: 6

[文件操作] [已解决]求助批处理查找相同文件并移动?

[复制链接]
发表于 2022-9-8 08:26:41 | 显示全部楼层 |阅读模式
本帖最后由 a574045075 于 2024-2-17 17:38 编辑

有2个文件夹分别是01和02,里面都有好多文件,如何用批处理查找出01和02文件夹里面CRC值相同的文件,并把01文件夹相同的文件移动到03文件夹.

评分

参与人数 1PB +2 收起 理由
Batcher + 2 感谢给帖子标题标注[已解决]字样

查看全部评分

发表于 2022-9-8 10:16:03 | 显示全部楼层
俺认为楼主的目的是文件去重,故用MD5而非CRC,代码如下:

  1. @echo off
  2. rem 保存为ANSI格式
  3. setlocal
  4. set "Source_Dir1=D:\01"
  5. set "Source_Dir2=D:\02"
  6. set "Target_Dir=D:\03"
  7. for /f "delims==" %%a in ('set DupFile_ 2^>nul') do set "%%a="
  8. for /f "usebackq delims=" %%a in (`dir "%Source_Dir1%" "%Source_Dir2%" /a-d /s /b`) do (
  9.         for /f "usebackq tokens=*" %%z in (`certutil -hashfile "%%~fa" MD5^|find /v ":"`) do (
  10.                 if defined DupFile_%%z (
  11.                         move /y "%%~a" "%Target_Dir%"
  12.                 ) else (
  13.                         set "DupFile_%%z=True"
  14.                 )
  15.         )
  16. )
  17. endlocal
复制代码

评分

参与人数 1技术 +1 收起 理由
a574045075 + 1 谢谢

查看全部评分

 楼主| 发表于 2022-9-8 10:33:45 | 显示全部楼层
俺认为楼主的目的是文件去重,故用MD5而非CRC,代码如下:
hfxiang 发表于 2022-9-8 10:16



    运行提示:文件名、目录名或卷标语法不正确。
发表于 2022-9-8 10:37:55 | 显示全部楼层
请保存为ANSI格式
并确保你的D:\01、D:\02、D:\03 都存在
 楼主| 发表于 2022-9-8 10:50:14 | 显示全部楼层
请保存为ANSI格式
并确保你的D:\01、D:\02、D:\03 都存在
hfxiang 发表于 2022-9-8 10:37



    保存为ANSI格式了,还是提示,文件名和路径都是数字.
发表于 2022-9-8 10:59:54 | 显示全部楼层
俺在Windows 10环境下测试一切正常,能完美工作,但你却不能正常运行,俺只能表示无能为力了
 楼主| 发表于 2022-9-8 11:04:18 | 显示全部楼层
本帖最后由 a574045075 于 2022-9-8 11:10 编辑
俺在Windows 10环境下测试一切正常,能完美工作,但你却不能正常运行,俺只能表示无能为力了
hfxiang 发表于 2022-9-8 10:59



    解决了 代码的路径我搞错了.
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-18 05:44 , Processed in 0.012651 second(s), 9 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表