misonoteApp Center

npm 缓存(~/.npm/_cacache)能删吗?Mac 上怎么清理

可以放心删会自动重新生成;Thermo 直接删除。

先退出: npm

位置

  • ~/.npm/_cacache
  • ~/.npm/_logs

这是什么

_cacache 是 npm 的内容寻址缓存,凡是 npm install 下载过的包压缩包和元数据都会存进来,下次安装时优先从这里取。_logs 是 npm 每次运行留下的调试日志。

为什么会这么大

npm 几乎不会主动淘汰缓存,你装过的每个包的每个版本都留在这里。前端项目依赖动辄成百上千个,项目一多、依赖一升级,缓存就会持续膨胀。

能删吗?删了会怎样

安全。删除缓存不会影响任何项目里已经装好的 node_modules,只是下次安装依赖时需要重新从网络下载,速度会慢一些。如果有 npm 命令正在执行,先等它结束再清理。离线开发或网络很差时可以暂时保留。

小提示

npm 还有一个只校验缓存、顺手清掉无效数据的 verify 子命令,如果只想瘦身而不想之后全部重新下载,可以先试它。

先看看占了多少

du -sh "$HOME/.npm/_cacache" "$HOME/.npm/_logs" 2>/dev/null

用它自带的命令清理

npm cache clean --force

手动删除

在「终端」里执行。删除不可撤销,执行前请确认路径。

rm -rf "$HOME/.npm/_cacache"
rm -rf "$HOME/.npm/_logs"