今天捣鼓的这个 cani 工具,真是让我哭笑不得,折腾得够呛。你们听我慢慢说。

起个头,为啥搞这个?

前几天想装个新软件,结果提示磁盘空间不足。我一看,好家伙,SSD都快塞爆了!翻来覆去找,发现全是些八百年不用的缓存文件、旧安装包、不知道哪来的临时文件,堆得跟小山似的。手删,根本无从下手,也不知道哪些能删、哪些不能删,怕删错了系统蹦迪给我看。我寻思着,肯定有啥工具能帮我理清楚这些东西?

cani

网上开搜,撞见cani

我就开始上网瞎搜“怎么清理磁盘”、“找大文件工具”,翻来覆去。也不知道在哪个犄角旮旯的论坛帖子里,瞥见了“cani”这个名字。描述说得挺悬乎,好像能扫描整个硬盘,然后告诉你有多少空间能被清理出来,还说是命令行工具,老程序员爱用的那种。我心一横,寻思着命令行就命令行,试试看,总比手动删强。

开整,第一步就卡壳

按照看到的零星信息,想着用包管理工具直接装应该最快。打开我的终端,信心满满地敲了安装命令(这里不说具体命令,反正就是装软件那套)。结果终端直接给我甩脸子:“cani 命令不存在” !我懵了。不是都说能用包管理装吗?难道我听错了?又搜了一圈,发现这玩意儿好像真没进常用仓库,得自己手动搞源码安装?我那个头疼,这门槛也太高了点。

硬着头皮,手动安装

没办法,来都来了,折腾就折腾到底。找源码地址下载压缩包解压,一套流程下来还算顺利。关键就在编译安装这步。打开解压的文件夹,里面有个叫 README 的文件,我耐着性子读。步骤倒是不多,就三步

cani

  • go build 来编译生成程序文件
  • 生成的可执行文件放在某个系统路径下(比如 /usr/local/bin)
  • 确保这个路径在你的系统环境变量里

看着挺简单,实际操作起来,光是搞明白那个环境变量怎么设置,就花了我半个小时。命令行新手,伤不起! 弄完后,怀着虔诚的心再次敲下 “cani” — 这回终端没报错了!可它也没动静!啥也没提示!我又懵了。咋回事?难道姿势不对?

cani

胡乱尝试,终于扫出来了

就在我准备放弃的时候,随手加了个 “-h” 想看看帮助。还真跳出东西来了!原来它默认啥都不干,得手动告诉它扫描哪个目录。比如想看看我的主目录能清出多少空间,就得这么敲:cani ~ (就是键盘左上角波浪线那个符号)。回车一按,终端终于开始哗哗地滚屏了!心里那个激动,跟中奖似的!它还真把我整个主目录全盘扫描了一遍。

看见结果,又喜又惊

扫完以后,屏幕最底下总算出结果了。它告诉我:能安全释放的空间足足有 25G!这个数字简直闪瞎眼!太爽了!但还没等我高兴两秒,问题来了:它只告诉我“能清25G”,却没具体告诉我哪些文件能删难道让我看着目录名猜? 这跟大海捞针有啥区别?说好的轻松清理?我以为它能像吸尘器一样,把垃圾直接吸出来,结果它只是告诉我“你家很脏,有10公斤垃圾,自己找去”,这体验落差也太大了! 白高兴一场。

还是得手动

被这么一整,我彻底服气了。工具指望不上,只能靠自己。根据它扫出来的报告里涉及的那些大文件夹(比如 .cache 缓存目录,一个占了20多个G的旧下载文件夹),捏着鼻子,硬着头皮,一个一个手动打开,凭着记忆和常识,在里面挑挑拣拣。看到可疑的压缩包、下完又忘了的游戏安装器、看过的视频副本,就心一横按下删除。折腾了快俩小时,眼睛都快看瞎了,终于手动清理掉将近20G。cani 的工具使命,到告诉我容量后就结束了,剩下的脏活累活还是得自己撸起袖子干。这工具,说是救星,确实指出了方向(毕竟25G),说是帮手,关键的具体操作一点没帮上。食之无味,弃之可惜。

cani