You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用PowerShell筛选文件夹中相同大小的重复文件?

问题描述

我有数千张照片和视频需要清理,其中许多是重命名后的重复文件。我希望遍历文件夹,仅输出至少两个大小相同的文件名,以便后续排查是否为重复文件。当前执行以下命令可按文件大小分组,但会显示全部文件,请问如何仅输出相同大小的文件?

get-childitem $path -recurse -filter "*.mov" |
  group-object length |
  sort-object name -desc
解决方案

只需在分组后过滤出成员数量≥2的分组,再输出这些分组内的文件即可。修改后的命令如下:

Get-ChildItem $path -Recurse -Filter "*.mov" |
  Group-Object Length |
  Where-Object { $_.Count -ge 2 } |
  Sort-Object Name -Descending |
  ForEach-Object { $_.Group }

关键修改说明

  • Where-Object { $_.Count -ge 2 }:直接筛选出包含至少2个文件的大小分组,排除掉只有单个文件的分组,避免无效输出
  • ForEach-Object { $_.Group }:将每个符合条件的分组里的文件列表展开,最终只输出大小重复的文件

如果需要更直观的展示格式(先显示对应文件大小,再列出所有重复文件路径),可以使用这个增强版命令:

Get-ChildItem $path -Recurse -Filter "*.mov" |
  Group-Object Length |
  Where-Object { $_.Count -ge 2 } |
  Sort-Object Name -Descending |
  ForEach-Object {
    Write-Host "`n📁 文件大小: $($_.Name) 字节"
    Write-Host "重复文件列表:"
    $_.Group | ForEach-Object { Write-Host "  → $($_.FullName)" }
  }

内容的提问来源于stack exchange,提问作者Sweetlb

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.15 21:27:05