news 2026/9/3 19:29:31

Czkawka 磁盘清理完整指南:从重复文件扫描到相似图片分组

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Czkawka 磁盘清理完整指南:从重复文件扫描到相似图片分组

Czkawka 磁盘清理完整指南:从重复文件扫描到相似图片分组

【免费下载链接】czkawkaMulti functional app to find duplicates, empty folders, similar images etc.项目地址: https://gitcode.com/GitHub_Trending/cz/czkawka

如果你的磁盘里散落着好几份同一份报告的副本,相册里同一张合影留着好几个版本,Czkawka 重复文件清理值得放进工具箱。它是一款用 Rust 编写的开源磁盘清理工具:重复文件、相似图片、空文件夹、损坏文件这些常见垃圾,全部交给同一个扫描引擎处理,Windows、macOS、Linux 都能跑,没有广告,不联网,不收集任何数据。

值不值得用:先核对三个标准

装之前先看三个维度。

  • 性能:多线程 + Rust,几乎不含 unsafe 代码。十万文件量级的目录全量扫一遍约 2 分钟,内存占用通常不到 50MB。
  • 隐私:翻一遍依赖清单,里面没有 HTTP、遥测类库,没有更新检查、没有统计上报,所有计算都在本地离线完成。
  • 维护状态:项目活跃,且带缓存机制——同一批目录第二次扫描,已算过的哈希直接复用,速度明显快于第一次。

缓存只存哈希、缩略图这类算好的元数据,不存文件内容,量再大的库也就几百 MB,不会反过来吃掉磁盘。另有一个容易忽略的好处:缓存是所有前端共享的,你用 GUI 扫过的结果,CLI 再扫也能直接受益。

选哪个版本:Krokiet、GTK、CLI 与 Android 版

项目有 4 个前端,背后都是同一个czkawka_core库,所以功能完全对齐:

前端界面技术平台当前状态
KrokietSlintWindows / macOS / Linux主推版本,新功能都在这里
Czkawka GUIGTK 4Windows / macOS / Linux12.0 为最终版本,不再提供新二进制
CediniaSlintAndroid实验版,可直接扫手机相册与下载目录
czkawka_cli终端Windows / macOS / Linux面向脚本与定时任务

新安装建议直接选 Krokiet:单文件可执行程序,没有运行时依赖,三端行为一致。GTK 版停在 12.0,主要原因是 GTK 4 在 Windows、macOS 上的移植存在窗口透明化、HiDPI 文字发虚等长期问题,Krokiet 正是为了绕开这些才做的。Cedinia 是 Android 实验版,手机上直接扫相册和下载目录,但没有视频工具(Android 上缺 ffmpeg)。

🧹 安装与第一次扫描:用哈希找出重复文件

预编译二进制是官方主推的安装方式,从项目 Releases 页下载对应平台与架构的版本。Linux 与 macOS 给执行权限后直接运行,Windows 双击 exe 即可:

chmod +x linux_krokiet_x86_64 ./linux_krokiet_x86_64

macOS 首次打开会被系统拦下,右键选"打开"再确认一次就能正常使用。如果只想在命令行里用,可以用winget install Czkawkabrew install czkawka装 CLI。

实操就四步:把要扫的目录添加进列表,把系统目录、虚拟磁盘塞进排除项;在设置里设一个最小文件尺寸,让零碎小文件不参与比对;点"扫描"。结果出来后,重复组按组排列,先在预览区把每组过一眼,再决定批量删除还是移动到目标文件夹。

查重本身是一条三段式哈希流水线:先按文件大小精确分组,再对每个文件的头尾算一个快速的"预哈希",把绝大部分不可能重复的文件筛掉,最后才对同尺寸、同预哈希的候选做完整 Blake3 哈希。这样快,而且"同名不同内容"绝不会混进同一组——内容哈希才是最终判词。首次扫描会把结果写进缓存,第二次只重算发生变化的文件。

相似照片、视频、音乐怎么分组

难啃的情况是内容相近但字节不同:旅行回来的 5000 张照片,同一张合影存了 6 个版本——不同分辨率、加了水印、裁剪过、旋转过。"相似图片"工具用感知哈希来归组:它不看文件字节,而是把图片压缩成一个小指纹,再量两个指纹之间的"距离",距离越近图越像。

"最大差异"参数控制分组松紧:越小越严格,越大越宽松,默认阈值对付缩略图和原图够用。想连镜像、旋转版本一起抓住,打开"几何不变性",代价是扫描变慢。

视频走同一套思路:抽帧后比对画面,这一步需要先装 ffmpeg(Linux:sudo apt install ffmpeg,macOS:brew install ffmpeg)。音乐分两种模式,按标签(艺术家、专辑、标题)匹配快,按音频内容比对更彻底。清理时每组挑一张最清晰的留下,其余归档或删掉;拿不准的先翻预览再动手。

其余工具也值得一提:空文件夹、空文件、临时文件、大文件、损坏文件、无效符号链接、错误扩展名(内容和扩展名对不上)、坏文件名、Exif 元数据清理,还有视频优化器——能裁掉首尾静止片段并把视频转成更省空间的编码格式。

🛠️ 命令行自动化:三行脚本

czkawka_cli与 GUI 共用全部扫描逻辑,适合写进定时脚本:

czkawka_cli dup -d ~/Downloads -s HASH -f duplicates.txt czkawka_cli empty-folders -d ~/Documents czkawka_cli big -d ~/ -n 20

几个实用点:

  • 删除类操作加-Q先做演练,只列出会被删的文件,不动真格;
  • -D指定保留策略,比如-D AEN表示每组留最新的、删其余;
  • 退出码有讲究:0 是没扫到,11 是扫到了,1 是出错,脚本可以据此分支。

-r参数适合保护原件:它把目录标记为"参考目录",参与比对但永不删除。比如扫下载目录时让-r指向备份目录,备份那份就安安稳稳。每个子命令都带--help,过滤扩展名、排除目录、输出结果文件等参数都能查。

避坑清单与同类工具对照

几个容易踩的点:

  • 先预览再确认:删除策略(-D)决定每组留哪个,官方流程是先用-Q列出清单、人工过目再执行;"损坏文件"工具存在误报,删之前手动验证一下文件能不能正常打开。
  • 先排除再扫描:系统目录、备份盘、网络路径提前放进排除列表,又快又安全。
  • 硬链接有边界:硬链接只在同一磁盘卷内有效,跨分区会直接失败(原文件不受影响),跨盘场景请改用移动。
  • 最小尺寸是隐形门槛:重复扫描默认跳过 16KB 以下的文件,想连小文件一起扫,需要到设置里调低阈值。

把 Czkawka 和其他清理工具摆在一起,差异点比较直观:

Czkawka(Krokiet)DupeGuruFSlint
实现语言Rust,多线程PythonPython
平台Win / macOS / Linux / AndroidWin / macOS / Linux仅 Linux
相似图片分组支持支持不支持
视频 / 音乐内容比对支持不支持不支持
空文件夹、临时文件、无效符号链接支持不支持支持
联网、遥测
开发状态活跃维护更新缓慢已停滞

想上手的话,先拿"下载"这类小目录试一次,确认分组结果和保留策略都符合预期,再去碰大的。参数细节与原理说明见仓库里的使用总文档、CLI 参数参考和FAQ。

【免费下载链接】czkawkaMulti functional app to find duplicates, empty folders, similar images etc.项目地址: https://gitcode.com/GitHub_Trending/cz/czkawka

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/4 4:18:44

Grok Bot强制命名是优点:从身份标识到实例管理的工程实践

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/3 21:38:35

Python GUI开发:从事件驱动原理到Gradio与Streamlit实战应用

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/2 11:51:22

本地部署DeepSeek Harness,打造会说话的AI角色“爱莉”

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/2 11:51:11

求生之路2三方图浪潮狂疫:安装、联机与高难度团队生存指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/2 11:50:02

2026年AI论文写作工具怎么选?3款横评差异大

论文写到凌晨两点,查重报告弹出来那一刻,整个人是懵的。重复率超标、AI检测标红、导师留言"结构再调调"——这些场景每个写过论文的人都经历过。市面上的AI论文写作工具越来越多,功能描述看着都差不多,真上手才发现差距…

作者头像 李华
网站建设 2026/9/2 11:49:32

DocSift:基于语义索引的精准文档检索,告别RAG暴力切分

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华