CleanX 为本站自用工具,不对外开放。
用 Rust 写的这几个工具,别看包小,编译缓存基本都在2-5GB左右,再加上其他应用的各种缓存垃圾,将近上百GB容量被占了,所以用AI写了个垃圾清理功能,一个功能显得单调,后续加了文件搜索:可取代本站一直在用的Everything,慢慢地会把所有内容都转到 90notes,散落在各处的 txt、word 文档随后都会删除;系统维护:重点是可以创建和删除还原点。一次测试清理垃圾功能时把在用的驱动也给删掉了,重启笔记本卡在 LOGO 处进不了系统,靠的就是还原点才恢复正常。屏幕亮度调节:笔记本外接显示器,它官方应用200MB起步,功能多,启动慢,有时还加载不出来,而本站只用它的亮度调节功能,怎么搞?AI轻松搞定,现在用CleanX可以一键调节外接显示屏的亮度!

CleanX 是什么
CleanX 是一个 Windows 桌面工具,作者按自用需求写的。后端 Rust + Tauri,前端是原生 HTML/CSS/JS,没有任何 npm 依赖,编译产物是单个 exe,大小约 1.5MB。没有数据库,没有许可证模块,没有托盘常驻,关掉窗口进程就退出。
它把五件事放在五个标签页里:垃圾清理、文件搜索、大文件、系统维护、屏幕亮度。对应的都是 Windows 用户最常见的那几个问题——C 盘又满了、文件记不清放哪、某个大文件悄悄占了几个 G、WinSxS 越滚越大、外接显示器亮度只能进 OSD 菜单调。
实测环境:Windows 11 ,外接屏 AOC Q24G2。
快速了解:CleanX = 80+ 路径的缓存垃圾扫描清理 + Everything 式文件搜索 + 大文件筛选 + DISM/旧驱动/还原点维护 + AOC 外接屏亮度调节,全部在一个 1.5MB 的单文件 exe 里。
体积和技术栈
| 项目 | 数值 |
|---|---|
| 发布形态 | 单个 exe(不打包 MSI),大小约 1.5MB |
| 后端 | Rust + Tauri,24 个 IPC 命令 |
| 前端 | vanilla HTML/CSS/JS,无构建工具 |
| 依赖 | tauri、serde、chrono、walkdir、jwalk、encoding_rs;无 tokio、无数据库 |
| 控制台输出 | UTF-8→GBK 顺序解码,中文系统下 DISM/vssadmin/pnputil 的中英文输出都能解析 |
| 运行环境 | Windows 10/11,依赖系统自带 WebView2 运行时,单 exe 免安装 |
对比一下同行的体积:Everything 安装包 2~3MB(64 位版约 3MB),WizTree 单文件约 11.9MB,Dism++ 是绿色免安装软件。CleanX 的体积量级和 Everything 接近,但原因不同:Everything 是纯原生 Win32 程序,本身就不依赖运行时;CleanX 靠 Tauri 借用系统自带的 WebView2,exe 里不用塞 Chromium,体积因此也压得下来。
对用户来说,这些意味着:程序不需要联网、不下载任何组件,体积才压得这么小。功能上是"够用"取向,每个功能只做到实用,不做花哨扩展。
关键数字一览
常用数字速查:
| 指标 | 数值 |
|---|---|
| 程序体积 | exe 约 1.5MB,不打包 MSI |
| 扫描目标 | 80+ 个缓存路径,12 个分类 |
| MFT 索引速度 | C 盘 44 万条 / 2.6 秒(管理员) |
| 元数据补全 | 44 万条约 4 秒,99.98% 覆盖 |
| 非管理员索引 | 全盘遍历 5-30 秒 |
| 索引上限 | 200 万条,防内存/序列化爆掉 |
| 搜索响应 | 输入即搜,100ms 防抖,百万索引秒级返回 |
| 二次启动 | 磁盘缓存直接加载,即时可用 |
| 大文件阈值 | 50MB / 100MB / 500MB / 1GB |
| 还原点列表 | 最多显示 30 个,带 GUID 校验 |
| 删除重试 | 3 次,间隔 200ms |
| IPC 命令 | 24 个 |
| 实测环境 | Windows 11 + AOC Q24G2 |
垃圾清理:80 多个路径,12 个分类
启动后自动扫描。扫描清单是硬编码的已知缓存路径,80 多个,分 12 类:rust、python、node、go、java、dotnet、tauri、ide、browser、app、windows、system。
覆盖的内容大致是:
| 分类 | 主要路径 |
|---|---|
| rust | 各项目 target/ 与 src-tauri/target/、.cargo/registry、.rustup/toolchains |
| python | pip cache、uv、PDM、Poetry、Nuitka,项目里的 pycache 递归 4 层查找) |
| node | npm cache(Roaming/Local 两处)、Yarn、pnpm store、bun、deno、TypeScript、node-compile-cache |
| go | go/pkg/mod、go-build |
| java | .m2/repository、.gradle/caches 与 daemon、Android SDK temp 与 build-tools |
| dotnet | .nuget/packages、assembly 缓存、VS Scratch |
| tauri | tauri 缓存、com.tauri.dev |
| ide | VS Code/Cursor/Windsurf/Trae 的 Cache/GPUCache,JetBrains 全家桶的 caches/index/tmp/splash,Android Studio |
| browser | Edge/Chrome 的 Cache、Code Cache、GPU Shader,Firefox 各配置文件的 cache2/startupCache/thumbnails |
| app | 微信文件目录、Discord、Slack、Teams、Steam htmlcache/appcache、NVIDIA DXCache/GLCache、Office 遥测、Google Drive 缓存 |
| windows | C:\Windows\Temp、Windows Update 下载缓存、Delivery Optimization、Prefetch、WER、崩溃转储、缩略图、字体缓存、回收站、Windows.old、CBS/DISM 日志 |
| system | Package Cache、pyright 临时目录、Config.Msi、系统卷信息 |
每个结果行显示路径、大小、文件数和分类,可以按分类标签筛选,行内带"定位"按钮直接打开资源管理器。删除前弹确认框,显示将释放的总空间,删除过程有进度和失败明细。
删不掉的项目会自动重试;权限不足时(管理员模式)会尝试更彻底的删除方式。非管理员遇到权限错误会提示"权限不足,请以管理员身份运行",不会静默跳过。被其他程序占用的文件,关掉占用程序后重试即可。
和其他清理软件的定位差异
| 工具 | 特点 | 和 CleanX 的差异 |
|---|---|---|
| Windows 自带磁盘清理/存储感知 | 系统自带,最安全 | 只清系统级缓存,不碰开发工具缓存和浏览器缓存 |
| 火绒 | 安全防护为主,附带轻量清理 | 定位是安全防护,清理只是附带功能,不涉及开发工具缓存 |
| CCleaner | 老牌综合清理,注册表清理是特色 | 综合清理覆盖面广,免费版部分功能受限;不含开发缓存专项和文件搜索 |
| Dism++ | 系统深度清理+优化,绿色免安装 | 功能面宽(启动项、驱动、备份、ESD 转换),界面项多、上手有门槛 |
| 360 清理大师 | 一键清理,操作门槛最低 | 面向大众的一键式清理,扫描范围以通用缓存为主,不涉及开发工具缓存 |
| Wise Disk Cleaner | 轻量通用清理 | 扫描范围以通用缓存为主,不含开发缓存专项和文件搜索 |
| CleanX | 开发缓存专项 + 文件搜索 | 覆盖面窄,但开发机缓存路径收得全,且和搜索/大文件/亮度集成在一个程序里 |
CleanX 的扫描清单明显偏向开发者:Rust/Node/Java 那几类的路径数量,比通用清理工具细得多。通用清理工具的扫描范围以系统临时文件和浏览器缓存这类公共路径为主,开发机上的 target、.gradle、.m2、npm-cache 这类动辄几个 G 的目录,通常不在它们的清单里。
安全设计
早期版本曾经把 C:\Windows\System32\DriverStore\FileRepository 加进扫描清单,一次管理员模式下的强制删除导致存储控制器驱动被删,系统无法启动,最后靠系统还原才恢复。
事故之后做的改动:
- DriverStore\FileRepository、C:\Windows\Installer、WinSxS\ManifestCache 从清单里永久移除
- windows、system 两个分类默认不勾选,「全选」和表头勾选框都跳过这两类
- 这两类的行带 ⚠️ 标记
- 系统目录清理只走官方工具:DISM(组件存储)、pnputil(驱动)、vssadmin(还原点)
- 选中状态跟随筛选视图,切分类标签不会把别的分类的勾选带过来
对使用者的意义:清理时 windows/system 类默认不选中、删除前有确认弹窗、删不掉的项目会明确报错而不是跳过。原则是宁可清不到,不碰风险路径。
文件搜索:Everything 的原理,加一层兜底
三层索引策略:
| 优先级 | 方式 | 条件 | 实测速度 |
|---|---|---|---|
| 1 | NTFS MFT 直读 | 管理员 | 秒级,C 盘 44 万条 / 2.6 秒 |
| 2 | 全盘并行遍历 | 非管理员 | 5-30 秒,视盘符大小 |
| 3 | 磁盘缓存 %LOCALAPPDATA%\cleanx\file_index.json | 二次启动 | 即时 |
MFT 直读的原理和 Everything 相同:直接从 NTFS 的主文件表读文件记录,再递归拼出完整路径,所以建索引可以做到秒级。MFT 记录里不带可靠的文件大小和修改时间,读完会用多线程补全:44 万条约 4 秒,99.98% 覆盖。索引上限 200 万条。旧版本(cache-cleaner 目录)的缓存文件会自动迁移到新目录,兼容旧数据。
索引建成后输入即搜(100ms 防抖),百万条索引也能秒级返回。结果列显示文件名、修改日期、路径,带定位按钮。
和 Everything 的对比
| 对比项 | Everything | CleanX 文件搜索 |
|---|---|---|
| 索引来源 | NTFS MFT + USN 日志实时监控 | MFT 直读(管理员)/ 全盘遍历(非管理员) |
| 实时性 | 有,文件变化自动进索引 | 无,需要时重建索引或加载缓存 |
| 查询语法 | 通配符、布尔、正则、path:/size:/dm: | 文件名/路径子串匹配 |
| 索引上限 | 无 | 200 万条 |
| 非 NTFS | 不支持(FAT/exFAT 无能为力) | 全盘遍历兜底,什么文件系统都能扫 |
| 体积 | 安装包 2~3MB | exe 约 1.5MB |
| 附加功能 | 纯搜索 | 与垃圾清理、大文件、定位集成 |
结论很直接:只追求"输个名字立刻出结果",Everything 更完整——USN 实时监控意味着索引永远不用手动刷新,查询语法也强得多。CleanX 的搜索是"快照式"的:建一次索引,在清理流程里顺手搜文件、顺手定位,不装第二个软件。它的非 NTFS 兜底是 Everything 给不了的:U 盘上的 exFAT、FAT32,Everything 搜不了,CleanX 的全盘遍历可以。
和 Windows 自带搜索的对比
Windows 搜索索引文件名和文档内容,能按内容搜,但慢。索引建立时机不可控,文件多的时候第一次搜索能等十几秒,而且它优先索引用户目录,系统目录和开发目录经常不在索引范围里。Everything 类工具是在内存里查预建索引,量级上快几个档次,代价是只按文件名搜——这正好是日常"找文件"的主要场景。
大文件:阈值筛选
选盘符 + 最小大小(50MB/100MB/500MB/1GB),扫完按大小降序排列。这是回答"谁占了我 200G"的最直接方式。
同类软件的对比:
| 工具 | 原理 | 速度 | 可视化 | 价格 |
|---|---|---|---|---|
| WizTree | MFT 直读 | 1TB 约 3-10 秒,比遍历快一个量级 | 树形 + 热力方块图 | 个人免费,商用收费 |
| TreeSize | 文件系统遍历(新版部分用 MFT) | 分区约 8-12 秒,机械盘更慢 | 嵌套树 + 柱状图,方块图在 Pro 版 | 免费版受限,Pro 约 $58 |
| SpaceSniffer | 遍历 | 最慢,边扫边出图 | 只有 Treemap,不支持中文界面 | 免费 |
| CleanX 大文件 | 全盘并行遍历 | 中等 | 列表,按大小降序 | 免费 |
定位差异:WizTree/TreeSize 是"整个磁盘长什么样"的分析器,方块图适合一眼看出哪块大、哪些类型占空间;CleanX 是"找出超过 N MB 的文件"的筛选器,结果就是一张可排序列表。只想删几个大文件,后者够用;想系统性搞清磁盘结构,WizTree 更合适。
系统维护:DISM、旧驱动、还原点
三个子功能,全部调用 Windows 官方命令行工具,行为与系统本身一致。
DISM 组件存储(WinSxS):分析显示组件存储实际大小、可回收的程序包数和缓存;清理时不使用最激进的模式(那种模式会删掉卸载 Windows 更新所需的数据),保留更新回滚能力。清理完成后会重新分析一次,显示清理后的状态和上次清理日期。
先说清楚 WinSxS 是个什么东西,不然容易误会:它的显示体积是"虚胖"的——里面大量硬链接,看起来占 20-30GB,实际没那么多,但也绝对不能整删。能清的是旧补丁、旧组件备份和更新缓存,DISM 深度清理通常能释放 5-15GB(具体取决于更新历史)。Windows 的存储感知清不了 WinSxS,官方路径只有磁盘清理里的"Windows 更新清理"和 DISM 命令。CleanX 走的就是后者,而且只走保留回滚能力的安全清理。
对比 Dism++:它是初雨团队的开源软件,功能面宽得多(启动项、驱动、备份、ESD 转换),深度清理能释放几十 GB,适合熟悉系统维护的用户。CleanX 的 DISM 页只做一件事:分析、清理、看结果。对只想把 WinSxS 瘦一瘦的用户,在 CleanX 里点两个按钮就行,不用记命令、不用对着输出找数字。
旧驱动清理:自动识别同一设备安装过的多个驱动版本,只把旧版本标出来(按版本号比较,不会误删当前在用的驱动)。同一设备只有一个版本时不做任何操作。
还原点管理:列出系统还原点(最多 30 个),显示创建时间和所在卷,勾选后删除;默认不勾选最新一个,防止误删。也支持一键创建还原点。
这些功能单独用命令行也能做,但中文系统下的命令输出格式和英文版有差异,直接看容易读错。界面里已经处理好了,点按钮看结果即可。
屏幕亮度:调外接显示器
这个功能针对的是一类真实场景:很多外接显示器的亮度,Windows 标准通道根本调不了。实测 Q24G2 上标准 DDC/CI 通道不通,只有厂商官方软件能调。CleanX 自带一个约 150KB 的轻量桥接组件,只做一件事:把亮度数值写过去,实测读写都真实生效。组件在 CleanX 启动时后台预热,进亮度页秒开。
一个实测发现的硬限制:Q24G2 在节能/网络/游戏/电影/运动/阅读任一 ECO 模式下,亮度写入会被显示器拒绝应用——看起来成功,屏幕实际不变。只有「标准」模式可调,程序里对此做了警告提示。切换模式需要手动按显示器按键。
对比一下市面上其他的亮度方案:
| 方案 | 适用范围 | 实测结果 |
|---|---|---|
| Windows 设置/WMI | 笔记本自带屏 | 可调,但开机后读数可能陈旧 |
| 标准 DDC/CI | 外接屏 | Q24G2 上实测不通 |
| 厂商官方方案(I-Menu 一类) | 对应品牌外接屏 | 实测生效,但软件体积大 |
| CleanX 亮度调节 | AOC 外接屏 | 自带轻量桥接组件,实测生效 |
| 显卡控制面板 | 视驱动而定 | 部分显示器可调,OEM 屏经常没有亮度项 |
结论:"外接显示器调不了亮度"很多时候不是 Windows 的锅,是显示器固件只认厂商私有协议。CleanX 的选择是自带轻量桥接组件,免装厂商的重量级客户端。
实际操作:从打开到清理完
CleanX 启动即自动扫描,不需要手动点开始。第一次用的完整流程:
- 打开程序,等扫描跑完。80 多个路径逐个算大小,顶部进度条实时显示进度和已扫描的总量
- 扫描完看结果:顶部汇总"共计 N 项",每行有路径、大小、文件数、分类,可以按分类标签筛选
- 勾选要删的项——windows/system 两类默认不勾,全选也会跳过。点"删除选中",确认弹窗里显示将释放的空间
- 删除带进度条,每删一个实时累计"已释放";失败的项目会列出原因,不会静默跳过
- 找文件:切到"文件搜索"页,首次点"建立索引"(管理员模式几秒完成,非管理员 5-30 秒),之后输入即搜
- 找大文件:选盘符和最小大小(50MB 起步),扫完按大小降序,最大的几个一眼可见
- 系统维护页三件套:DISM 先"分析"看可回收量再决定"清理";旧驱动先"分析"看有几组老版本;还原点列出后勾选删除
- 调亮度:滑块直接拖,进页面前桥接已经预热好,不用等
整套流程几分钟走完。索引建过一次后,下次打开是即时的(磁盘缓存直接加载),不用重新建。
局限
这工具不是万能的:
- 文件搜索没有 USN 实时监控,文件变化不会自动进索引,需要重建
- 索引上限 200 万条,文件数百万级的盘会截断;缓存 JSON 会涨到几百 MB 量级
- 搜索只有子串匹配,没有 Everything 的查询语法
- 垃圾扫描清单是硬编码的 80 多个已知路径,不扫未知目录、不做启发式
- 亮度只支持走厂商桥接的 AOC 机型,普通标准 DDC 外接屏反而调不了
- 只支持 Windows;发布形态是单 exe,没有 MSI、没有自动更新
- 删除系统类文件需要管理员权限,非管理员只能清用户级缓存
适合谁用
- 开发机缓存多的人(Rust/Python/Node/Go/Java 全家桶的 target、.gradle、.m2、npm-cache 散在各处,手动找很烦)
- 需要"搜文件 + 顺手清垃圾"二合一的人
- 用 AOC 外接屏、不想装厂商大体积亮度软件的人
- 想要不吃内存、不开机常驻、关了就退出的小工具的人
不适合:想要全自动"一键优化"的,想要 Everything 全套查询语法的,想要更花哨的界面和更多系统优化项的。这类需求建议直接 Everything + WizTree + Dism++ 组合,各干各的。
FAQ
它是什么
CleanX 是什么软件?免费吗?
一个 Windows 桌面工具,作者自用开发后发布的。免费使用,没有广告、没有捆绑安装,也没有任何付费或授权机制。
文件搜索工具哪个好用?Everything 和 CleanX 有什么区别?
Everything 更好用——实时索引、查询语法、无限容量。CleanX 的优势在别处:U 盘上的 exFAT/FAT32 也能搜(Everything 只认 NTFS)、搜完直接定位、和清理功能在同一个程序里。速度没有可感知的差别,建完索引都是瞬时返回。
电脑清理软件哪个好?CCleaner、火绒、Dism++ 和它有什么区别?
CCleaner 偏综合(注册表清理是特色,免费版功能受限);火绒是安全软件附带清理;Dism++ 是系统深度清理。CleanX 的定位是开发缓存专项——target、.gradle、.m2、npm-cache 这类开发机独有的路径收得全,通用工具基本不碰。不做注册表清理、不做杀毒、不做启动项管理。
垃圾清理和文件搜索为什么要放一个软件里?
作者的使用场景是:C 盘满了 → 清缓存 → 顺手搜文件 → 顺手查大文件 → 调一下显示器亮度,一条龙。五个功能都很轻,塞进一个 1.5MB 的 exe 里互不干扰,比装五个软件省事。代价是每个功能都只做到"够用",深度不如专精软件。
安全与兼容
清理垃圾会不会误删系统文件?
这是它最小心的地方。windows/system 两类默认不勾选,全选也跳过,行上有 ⚠️ 标记;系统目录只走官方工具(DISM/pnputil/vssadmin)。历史上出过一次 DriverStore 事故(删了系统驱动导致无法启动,靠系统还原恢复),之后风险路径全部永久移除。删除前有确认弹窗,显示将释放的空间。
文件搜索要管理员权限吗?不给管理员能不能用?
直接读 NTFS 主文件表需要管理员权限。不给也能用:非管理员自动降级为全盘遍历建索引,速度从秒级变成 5-30 秒,搜索结果一样。清理和系统维护里的深度操作才必须管理员。
大文件扫描和 WizTree 哪个好?
定位不同。WizTree 是磁盘分析器,几秒扫完整个盘,方块图直观展示空间分布;CleanX 大文件是筛选器,按阈值列出超过 50MB/100MB/500MB/1GB 的文件。只想知道"最大的几个文件是谁",CleanX 够用;想系统性搞清楚磁盘结构,WizTree 更合适。
外接显示器亮度怎么调?CleanX 支持我的显示器吗?
实测的是 AOC Q24G2,走厂商官方桥接服务。同一桥接协议的 AOC 机型大概率能用,其他品牌和标准 DDC 外接屏不支持。调之前先确认显示器在「标准」模式——节能/游戏/电影等 ECO 模式下亮度会被锁死,写了也没用。
支持 Win7 吗?Win10 能运行吗?
实测环境是 Windows 11。界面依赖系统自带的 WebView2 运行时,Win10 一般自带,理论上能用但没有完整验证过;Win7 系统本身已停止支持,不建议使用。macOS 和 Linux 不支持。
日常使用
要安装吗?要不要装 .NET、Java 这类运行库?
不用。单个 exe,双击就能跑,绿色免安装。Rust 编译,没有 .NET/Java 运行时依赖;界面用的是系统自带的 WebView2。
刚下载的文件搜不到,需要重新建索引吗?
要。索引是快照式的,建一次存到 %LOCALAPPDATA%\cleanx\file_index.json,二次启动直接加载。它没有 Everything 那种实时监控,文件变化不会自动进索引——搜不到新文件时重建一次就好。缓存文件删掉也没关系,下次会重新生成。
删不掉的文件怎么办?
先看提示。提示"权限不足"就用界面上的按钮提权重启,管理员模式会启用强制删除;提示"被占用"就先关掉占用它的程序(正在运行的 IDE、浏览器这类)再删。仍然删不掉会显示具体错误信息,不会静默跳过。
该不该用
清理软件会偷偷占资源吗?会不会开机自启?
CleanX 本身不常驻:关掉窗口进程就退出,没有托盘,没有开机自启。只有一个例外——启动时会拉起一个约 150KB 的桥接进程(为了亮度页秒开),它不随 CleanX 退出,内存占用可以忽略。扫描、索引都是用完就退的临时线程。
清理软件会不会泄露隐私?文件会被上传吗?
不会。程序不连接任何外部服务器,唯一的网络连接是发给本机进程的(亮度功能,只连本机)。文件搜索、清理、扫描全部在本地完成,用的也都是 Windows 系统自带的命令。
该用 CleanX,还是装 Everything + WizTree + Dism++ 组合?
看需求。Everything 的实时索引和查询语法、WizTree 的磁盘分析、Dism++ 的深度清理,各自都强于 CleanX 的对应功能——追求每个功能的上限,装组合。CleanX 的价值是:开发缓存清理做得细、能搜非 NTFS 盘、五件事一个 1.5MB 的 exe、不开机自启不吃内存。日常工作流是"清缓存 + 偶尔搜文件 + 调亮度"的,一个就够。

发表评论