
电脑弹出“磁盘空间不足”时,最难的是判断到底该删什么。下载目录有旧安装包,项目文件夹有编译缓存,照片和聊天记录又不敢乱动。系统给出一个总数,却没告诉你空间被谁占走了
开源工具 disktree 想解决的就是这个问题。它把文件夹和文件画成一张可以逐层放大的方块地图:占用越多,方块越大。你可以先从最大的区域查起,再决定哪些东西确实可以清理
它把“找出大文件”和“删除文件”拆成两步:先看清,再勾选复核,避免因界面没看懂而误删
一眼看出空间花在哪儿
普通文件列表把几百个文件排成一列,用户得反复排序、打开文件夹,才能拼出占用情况。disktree 用矩形面积表示文件实际占用空间,目录则由里面的子文件继续切分。一个很大的方块可能是构建缓存,也可能是多年没整理的素材库;颜色还会帮助区分代码、媒体、文档、同步文件和缓存等类别

disktree 默认扫描用户主目录,支持用键盘或鼠标放大、进入子目录,也能按文件大小、数量或最近修改时间查看。对普通用户来说,这像是从一张房屋平面图开始,先找到面积最大的房间,再进去看里面堆着什么
比如,电脑要给新游戏腾空间,可以先查下载目录和媒体文件;开发者的电脑反复构建项目后,可以沿着地图找到旧构建产物;长期同步照片或视频的人,也能分辨是本地文件还是同步历史占了位置。这些场景里,地图的作用是缩短排查路径,不会替你判断内容是否重要
方块大小背后有个容易忽略的区别
文件“看起来有多大”和“在磁盘上实际占了多少空间”并不总相同。稀疏文件可以声明一个很大的容量,却只写入少部分内容;云盘文件也可能只有部分数据留在本机。GNU 的 du 文档解释了 apparent size(文件表面大小)与实际分配空间的差异
disktree 默认按磁盘实际分配的区块计算,而不是只看文件标注的长度。于是一个虚拟机镜像即使显示几十 GB,如果实际只占了少量区块,它在图上也不会显得同样巨大。用户也能切换到表面大小视图,回答“文件理论上有多大”这个不同的问题
不过,“占用多少”也不等于“删除后肯定能多出多少可用空间”。不同文件系统会共享或压缩数据,操作系统还可能用快照管理旧版本。项目文档特别提示,macOS 上的 APFS 克隆文件会各自计入,Time Machine 本地快照则不会显示在普通文件地图里,因此统计总量可能和系统显示的已用空间有差距。它更适合帮你找可疑的大目录,不是磁盘账本
删除前先过一遍清单
找到缓存或旧文件后,用户可以先标记它们。标记只代表“准备处理”,不会立刻发生删除;打开复核清单后还能取消其中某些项目。默认操作是移到废纸篓,想永久删除则要再确认一次。完成后工具会重新扫描,并显示实际腾出的空间

这个设计把容易后悔的动作留给人确认,也让用户能从预估回到实际结果。但安全边界仍然需要自己把握:清缓存和删旧安装包相对直观,系统目录、应用数据、数据库和唯一一份的个人文件就不该只看方块大小决定。macOS 用户若希望检查受保护的应用数据,项目要求在系统设置中授予“完全磁盘访问权限”;这会扩大工具可读取的范围,授权前应确认自己信任当前下载的版本
disktree 最初面向 Omarchy 桌面环境,9 月 25 日发布的 0.10.1 版本提供 macOS、Windows 和 Linux 版本,并修复 macOS 下载隔离问题。它适合想快速找出大目录、并且愿意自己复核文件的人;如果只想看系统盘剩余容量,系统自带存储设置更简单。第一次尝试时,从下载、桌面或某个项目目录开始扫描,只把明确可重建的缓存放进待处理清单,再优先移入废纸篓
硬盘清理最有用的第一步,不是立刻删除,而是知道空间究竟落在哪些文件上。disktree 把这个判断过程变得直观一些,最终的删除决定仍然留在你手里