doggie
1
ncdu是一款磁盘文件占用扫描软件,类似DaisyDisk
ncdu /Users/ww/Downloads
# ncdu后面输入想要扫描的路径即可,/指全盘扫描
然而ncdu只在Mac、Linux平台可用 并没有Windows端
冲浪以后发现gdu功能类似,而且支持linux、mac、Windows全平台
用起来和ncdu几乎一样的体验,装好以后
gdu /
# To avoid a conflict with `coreutils`, `gdu` has been installed as `gdu-go`.
# macos需要使用gdu-go
gdu-go /
gdu启动!
Windows安装
Windows建议通过scoop包管理器安装
scoop install main/gdu
你也可以直接下载安装github编译好的版本
Linux、macOS安装
用对应的包管理器安装即可,比如
brew install gdu
在 Linux 系统中,ncdu (NCurses Disk Usage) 是经典的磁盘空间分析工具,而 gdu (Go Disk Usage) 则是近年来出现的强力挑战者。
两者都采用终端交互界面,但在性能、底层技术和功能侧重点上有所不同。
1. 核心对比
| 特性 |
ncdu |
gdu |
| 底层语言 |
C |
Go |
| 扫描速度 |
较快(单线程) |
极快(利用多核并发扫描) |
| 交互性 |
经典 NCurses 界面 |
类 ncdu 界面,支持颜色高亮 |
| 并发处理 |
否 |
是(在 SSD 上优势显著) |
| 删除功能 |
支持 |
支持 |
| 安装包体积 |
极小 |
略大(静态编译) |
| 主要优势 |
极其稳定,几乎所有仓库都有 |
速度碾压,现代化的显示效果 |
2. 详细对比分析
性能表现(核心差异)
- gdu 的核心优势在于并发扫描。在搭载固态硬盘(SSD)的现代机器上,gdu 可以同时利用多个 CPU 核心读取目录树。对于拥有数百万个文件的海量数据盘,gdu 的扫描速度通常比 ncdu 快数倍。
- ncdu 采用单线程工作方式。虽然在处理传统机械硬盘(HDD)时,并发带来的提升有限,但在 SSD 环境下,它的效率确实不如 gdu。
兼容性与部署
- ncdu 是老牌工具,几乎预装在所有主流 Linux 发行版的官方仓库中。如果是在极简的服务器环境或嵌入式设备上,ncdu 通常是首选。
- gdu 作为一个单可执行文件(Static Binary),部署也非常简单。它更适合开发者或运维人员在个人工作站或高性能服务器上作为 ncdu 的升级替代品。
视觉与交互
- ncdu 界面非常素雅,典型的 90 年代终端风格。
- gdu 默认开启色彩支持,能用不同的颜色区分目录和文件,并清晰地标示出空间占用百分比,视觉上更符合现代审美。
3. 常用命令对比
两者的操作逻辑非常相似,几乎可以无缝切换。
- 基本扫描:
ncdu /path/to/dir
gdu /path/to/dir
- 仅扫描当前文件系统(不跨越挂载点):
- 交互界面常用快捷键:
Up/Down 或 j/k: 移动光标
Enter: 进入目录
d: 删除选中的文件或目录
q: 退出
4. 总结与建议
-
选择 ncdu 的情况:
- 你在维护一台非常老旧的服务器。
- 你对软件的稳定性有近乎苛刻的要求。
- 你习惯了没有色彩干扰的极简界面。
-
选择 gdu 的情况:
- 你需要扫描包含海量小文件(如 node_modules, 机器学习数据集)的目录。
- 你在使用 SSD 或 NVMe 存储。
- 你更喜欢有色彩高亮、响应更迅速的现代工具。
一句话建议: 如果你追求极致的扫描效率,直接换成 gdu;如果你只需要偶尔在服务器上随便看看,ncdu 已经足够优秀。