Board logo

标题: [文件操作] [已解决]求助批处理查找相同文件并移动? [打印本页]

作者: a574045075    时间: 2022-9-8 08:26     标题: [已解决]求助批处理查找相同文件并移动?

本帖最后由 a574045075 于 2024-2-17 17:38 编辑

有2个文件夹分别是01和02,里面都有好多文件,如何用批处理查找出01和02文件夹里面CRC值相同的文件,并把01文件夹相同的文件移动到03文件夹.
作者: hfxiang    时间: 2022-9-8 10:16

俺认为楼主的目的是文件去重,故用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
复制代码

作者: a574045075    时间: 2022-9-8 10:33

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



    运行提示:文件名、目录名或卷标语法不正确。
作者: hfxiang    时间: 2022-9-8 10:37

请保存为ANSI格式
并确保你的D:\01、D:\02、D:\03 都存在
作者: a574045075    时间: 2022-9-8 10:50

请保存为ANSI格式
并确保你的D:\01、D:\02、D:\03 都存在
hfxiang 发表于 2022-9-8 10:37



    保存为ANSI格式了,还是提示,文件名和路径都是数字.
作者: hfxiang    时间: 2022-9-8 10:59

俺在Windows 10环境下测试一切正常,能完美工作,但你却不能正常运行,俺只能表示无能为力了
作者: a574045075    时间: 2022-9-8 11:04

本帖最后由 a574045075 于 2022-9-8 11:10 编辑
俺在Windows 10环境下测试一切正常,能完美工作,但你却不能正常运行,俺只能表示无能为力了
hfxiang 发表于 2022-9-8 10:59



    解决了 代码的路径我搞错了.




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2