查找重复文件夹名称并生成带路径的格式化列表(支持Unicode)
查找重复文件夹并分组导出的PowerShell解决方案
以下PowerShell脚本可在指定根目录下递归查找所有重复名称的文件夹,按名称分组后生成格式化文本文件,完美支持含Unicode或特殊字符的文件夹路径:
# 指定目标根目录 $rootPath = "Z:\METALAREA COLLECTION\" # 指定输出文件路径 $outputFile = "重复文件夹列表.txt" # 递归获取所有文件夹,按名称分组并过滤出重复项 $duplicateFolders = Get-ChildItem -Path $rootPath -Directory -Recurse | Group-Object -Property Name | Where-Object { $_.Count -gt 1 } # 构建输出内容 $outputContent = @() foreach ($group in $duplicateFolders) { # 重复文件夹名作为分组标题(加粗强调) $outputContent += "=== 重复文件夹名: *$($group.Name)* ===" # 列出该名称对应的所有完整路径 foreach ($folder in $group.Group) { $outputContent += "- $($folder.FullName)" } $outputContent += "" # 空行分隔不同分组 } # 写入文件,采用UTF-8编码确保Unicode字符正常保存 $outputContent | Out-File -Path $outputFile -Encoding UTF8
关键说明
- 原生支持Unicode与特殊字符路径,无需额外处理编码问题
- 输出格式按文件夹名分组,每组包含该名称的所有完整路径,结构清晰
- 可通过修改
$rootPath和$outputFile参数自定义目标目录与输出文件位置
运行脚本后,生成的文本文件示例格式如下:
=== 重复文件夹名: *DemoFolder* === - Z:\METALAREA COLLECTION\A\DemoFolder - Z:\METALAREA COLLECTION\B\SubDir\DemoFolder === 重复文件夹名: *特殊字符测试* === - Z:\METALAREA COLLECTION\测试目录\特殊字符测试 - Z:\METALAREA COLLECTION\海外资源\特殊字符测试
内容的提问来源于stack exchange,提问作者Jack Rock
相关产品推荐
相关产品推荐

