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

[文件操作] [已解决]批处理如何筛选文件夹中重复图片并输出到新的子文件夹

[复制链接]
发表于 2024-10-31 15:43:38 | 显示全部楼层 |阅读模式
文件夹中很多图片内容重复,只是名称不一样,能否通过某种办法,比如筛选文件大小相同的图片,或者其他的方法,找出重复图片,再将他们移动到一个新文件夹

评分

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

查看全部评分

发表于 2024-10-31 16:46:41 | 显示全部楼层
本帖最后由 aloha20200628 于 2024-10-31 16:55 编辑

回复 1# XRROT

依照 文件大小 匹配完全相同的文件,并被移动至用其 文件大小 命名的子目录中...

  1. @echo off &setlocal enabledelayedexpansion &set "_v=0"
  2. for /f "delims=" %%F in ('dir/b/a-d/os/-c') do (
  3.    if "!_v!"=="%%~zF" (
  4.       md "%%~zF" &move /y "%%F" "%%~zF"
  5.       if exist "!_F!" move /y "!_F!" "%%~zF"
  6.    )
  7.    set "_F=%%F" &set "_v=%%~zF"
  8. ) 2>nul
  9. endlocal&pause&exit/b
复制代码
 楼主| 发表于 2024-10-31 17:01:21 | 显示全部楼层
回复 2# aloha20200628
感谢大神相助,但我还有一点小请求,这个代码完成的效果是将每组相同的文件分别输出到一个新的子文件夹,如果我是想将所有重复的文件输出到仅一个文件夹,应该如何修改呢
发表于 2024-10-31 17:14:36 | 显示全部楼层
本帖最后由 aloha20200628 于 2024-10-31 17:16 编辑

回复 3# XRROT

依照 文件大小 匹配完全相同的文件,并被移动至新建的 重复文件 这个子目录中...

  1. @echo off &setlocal enabledelayedexpansion &set "_v=0" &md "重复文件"
  2. for /f "delims=" %%F in ('dir/b/a-d/os/-c') do (
  3.    if "!_v!"=="%%~zF" (
  4.       move /y "%%F" "重复文件"
  5.       if exist "!_F!" move /y "!_F!" "重复文件"
  6.    )
  7.    set "_F=%%F" &set "_v=%%~zF"
  8. ) 2>nul
  9. endlocal&pause&exit/b
复制代码

评分

参与人数 2技术 +2 收起 理由
yyz219 + 1 乐于助人
Batcher + 1 乐于助人

查看全部评分

 楼主| 发表于 2024-10-31 17:21:00 | 显示全部楼层
回复 4# aloha20200628
感激不尽!!完美解决了我的问题,非常感谢!
发表于 2024-11-3 07:08:26 | 显示全部楼层
回复 4# aloha20200628

谢谢
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-17 16:48 , Processed in 0.020729 second(s), 9 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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