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

如何对比两个目录的子目录列表,快速定位差异子目录?

快速找出目录A中存在但目录B缺失的子目录

命令行方案(最快实现)

Windows(PowerShell)

替换路径为你的实际路径后执行:

cd "你的A和B所在的父目录路径"
Compare-Object -ReferenceObject (Get-ChildItem -Path .\A -Directory | Select-Object -ExpandProperty Name) -DifferenceObject (Get-ChildItem -Path .\B -Directory | Select-Object -ExpandProperty Name) | Where-Object SideIndicator -eq '<=' | Select-Object -ExpandProperty InputObject

执行后会直接输出A独有的子目录名称(即2、4)。

Linux/macOS(Bash)

切换到A和B的父目录,执行:

cd /你的父目录路径
comm -23 <(ls -d A/*/ | sed 's/A\///;s/\///') <(ls -d B/*/ | sed 's/B\///;s/\///')

comm -23会筛选出仅在A中存在的目录名,sed用来清理路径前缀和末尾斜杠,只保留纯目录名。

GUI工具方案

如果偏好可视化操作,可以用Total Commander的同步功能:

  1. 打开Total Commander,分别在左右面板打开目录A和目录B
  2. 点击菜单栏的Commands -> Synchronize Dirs
  3. 在弹出窗口中勾选Compare directories only,取消其他文件相关对比选项
  4. 点击Compare后,A中独有的子目录会被高亮标记。

注:你提到的Mark的Compare Directories仅支持文件对比,上述方案可以完美替代实现目录名称的对比需求。

内容的提问来源于stack exchange,提问作者András

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.10 16:55:27