轻量级的VsCode为何越用越大?为什么吃了我C盘10G?如何无痛清理VsCode缓存?手把手教你为C盘瘦身

这篇具有很好参考价值的文章主要介绍了轻量级的VsCode为何越用越大?为什么吃了我C盘10G?如何无痛清理VsCode缓存?手把手教你为C盘瘦身。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

VsCode是一款轻量级代码编辑器

可用一段就会很快发现,“轻量级”的VsCode并不轻量

不统计不知道,一统计吓一跳,使用了一段时间后,VsCode占用了我C盘10G+的空间!

好家伙,于是我决定治理一下VsCode,让VsCode变得真正的轻量级。

VsCode的空间占用分析

VsCode所占用的空间,主要包括四大部分(下面是我写此博客时统计的结果):

  1. 程序的安装目录:大约会占用350M
  2. %userprofile%\.vscode:可达800M。主要为:各个拓展。VsCode卸载拓展似乎不会删除硬盘上的文件,因此这个里面很大,并且混有很多不用的
  3. %userprofile%\AppData\Local\Microsoft\vscode-cpptools\ipch :用一段时间能达到4G 与C(++)语言有关,关闭程序后可以直接删。不使用VsCode编辑C/C++的用户可能无此痛苦
  4. %userprofile%\AppData\Roaming\Code:2G+ 存放用户数据、配置等。 (可以通过启动时添加–user-data-dir NewDir 来使其他目录作为配置)

可以定期删除的地方,有3. ipch(可完全删除) 和 4. Romaing(不可完全删除)

4. Romaing中,到底哪些可以定期删除

%userprofile%\AppData\Roaming\Code中的文件进行更进一步地分析,我得到了如下结论:

%userprofile%\AppData\Roaming\Code\CachedExtensionVSIXs   用一段时间可以达到500M   可以直接删
%userprofile%\AppData\Roaming\Code\Cache       很快几十M
%userprofile%\AppData\Roaming\Code\CachedData  很快几十M
%userprofile%\AppData\Roaming\Code\CachedExtensions  安装新插件时,似乎默认不会自动删除,安装插件一多能达到800M
%userprofile%\AppData\Roaming\Code\CachedExtensionVSIXs 反正也是与插件有关的,也能达到几百M
%userprofile%\AppData\Roaming\Code\Code Cache    十几M
%userprofile%\AppData\Roaming\Code\Crashpad      十几M  用来存放崩溃信息
%userprofile%\AppData\Roaming\Code\logs          几十M  这个可以直接删,用来存放日志记录
%userprofile%\AppData\Roaming\Code\Service Worker 1G    
    %userprofile%\AppData\Roaming\Code\Service Worker\CacheStorage   1G  主要位于这里
    %userprofile%\AppData\Roaming\Code\Service Worker\ScriptCache    10M
%userprofile%\AppData\Roaming\Code\User          600M
    %userprofile%\AppData\Roaming\Code\User\workspaceStorage  500M  每打开一个工作目录就会在这个目录下生成一个文件夹
    %userprofile%\AppData\Roaming\Code\User\History           100M
            每Ctrl+S(仅限有修改的成功的重新保存)一次就会生成一个副本。
            这个不是按git的思路只存放更改,而是整个文件全部Copy一份。
            一个100多k的源码保存十次就是1M,对于习惯随手Ctrl+S的用户会占用较大的空间
            但是,删除之后将会影响历史版本的还原。
            其中,文件名采用了代码混淆技术,每个文件会生成一个文件夹,真正的文件名、各个文件对应文件保存时间都在每个文件夹下的entries.json中
    %userprofile%\AppData\Roaming\Code\User\snippets    这个不能删,并且重装还得记得备份(如果没有自动还原的话)这个是用户自定义的代码片段

能定时删除的目录

  1. %userprofile%\AppData\Local\Microsoft\vscode-cpptools\ipch
  2. %userprofile%\AppData\Roaming\Code\CachedExtensionVSIXs
  3. %userprofile%\AppData\Roaming\Code\Cache
  4. %userprofile%\AppData\Roaming\Code\CachedData
  5. %userprofile%\AppData\Roaming\Code\CachedExtensions
  6. %userprofile%\AppData\Roaming\Code\CachedExtensionVSIXs
  7. %userprofile%\AppData\Roaming\Code\Code Cache
  8. %userprofile%\AppData\Roaming\Code\Crashpad
  9. %userprofile%\AppData\Roaming\Code\logs
  10. %userprofile%\AppData\Roaming\Code\Service Worker\CacheStorage
  11. %userprofile%\AppData\Roaming\Code\Service Worker\ScriptCache
  12. %userprofile%\AppData\Roaming\Code\User\workspaceStorage
  13. %userprofile%\AppData\Roaming\Code\User\History

这么多文件夹总不可能手动地一个一个地删除,因此我写了一个脚本:

@REM example:
@REM del "%userprofile%/AppData/Local/Microsoft/vscode-cpptools/ipch/" /s /q /f
@REM rd "%userprofile%/AppData/Local/Microsoft/vscode-cpptools/ipch/" /s /q
@REM md "%userprofile%/AppData/Local/Microsoft/vscode-cpptools/ipch/"

@echo off

call:EmptyOneDir "%userprofile%\AppData\Local\Microsoft\vscode-cpptools\ipch"
call:EmptyOneDir "%userprofile%\AppData\Roaming\Code\CachedExtensionVSIXs"
call:EmptyOneDir "%userprofile%\AppData\Roaming\Code\Cache"
call:EmptyOneDir "%userprofile%\AppData\Roaming\Code\CachedData"
call:EmptyOneDir "%userprofile%\AppData\Roaming\Code\CachedExtensions"
call:EmptyOneDir "%userprofile%\AppData\Roaming\Code\CachedExtensionVSIXs"
call:EmptyOneDir "%userprofile%\AppData\Roaming\Code\Code Cache"
call:EmptyOneDir "%userprofile%\AppData\Roaming\Code\Crashpad"
call:EmptyOneDir "%userprofile%\AppData\Roaming\Code\logs"
call:EmptyOneDir "%userprofile%\AppData\Roaming\Code\Service Worker\CacheStorage"
call:EmptyOneDir "%userprofile%\AppData\Roaming\Code\Service Worker\ScriptCache"
call:EmptyOneDir "%userprofile%\AppData\Roaming\Code\User\workspaceStorage"
call:EmptyOneDir "%userprofile%\AppData\Roaming\Code\User\History"

goto end

:EmptyOneDir  rem same as Let empty [path] /q
    echo empty %1
    echo del %1 /s /q /f
    del %1 /s /q /f
    echo rd %1 /s /q
    rd %1 /s /q
    echo md %1
    md %1
:end

只需要将这个脚本另存为CleanVsCode.bat,并定期双击运行一次,就能定期释放大量空间

当然,释放的空间直接取决于你的VsCode所产生的缓存大小,间接取决于你的VsCode的使用次数。

最好关闭VsCode后再运行脚本。

⚠️Warning

运行脚本后再次运行VsCode基本上看不出什么不同,只是当前工作路径下所打开的文件需要重新手动点击打开。

毕竟是一个能删除很多东西的脚本,因此请谨慎使用。

我作为本篇博客的原创博主,只是为大家提供了一个便捷的方法,但是其可能造成的后果,博主并不承担责任。

但是大家可以放心的是,我自己也在定期运行这个脚本。

准备有空的时候将其加入Windows计划,以实现定期地自动释放空间。

视频版演示:

轻量级的VsCode为何越用越大?为什么吃了我C盘10G?如何无痛清理VsCode缓存?手把手教你为C盘瘦身

原创不易,转载请附上原文链接哦~
Tisfy:https://letmefly.blog.csdn.net/article/details/126082324文章来源地址https://www.toymoban.com/news/detail-848049.html

到了这里,关于轻量级的VsCode为何越用越大?为什么吃了我C盘10G?如何无痛清理VsCode缓存?手把手教你为C盘瘦身的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 轻量灵动: 革新轻量级服务开发

    从 JDK 8 升级到 JDK 17 可以让你的应用程序受益于新的功能、性能改进和安全增强。下面是一些 JDK 8 升级到 JDK 17 的最佳实战: 1.1、确定升级的必要性:首先,你需要评估你的应用程序是否需要升级到 JDK 17。查看 JDK 17 的新特性、改进和修复的 bug,以确定它们对你的应用程序

    2024年02月07日
    浏览(59)
  • 轻量级 HTTP 请求组件

    Apache HttpClient 是著名的 HTTP 客户端请求工具——现在我们模拟它打造一套简单小巧的请求工具库, 封装 Java 类库里面的 HttpURLConnection 对象来完成日常的 HTTP 请求,诸如 GET、HEAD、POST 等等,并尝试应用 Java 8 函数式风格来制定 API。 组件源码在:https://gitee.com/sp42_admin/ajaxjs/tr

    2024年02月01日
    浏览(72)
  • 一种轻量级定时任务实现

    现在市面上有各式各样的分布式定时任务,每个都有其独特的特点,我们这边的项目因为一开始使用的是分布式开源调度框架TBSchedule,但是这个框架依赖ZK, 由于ZK的不稳定性和项目老旧无人维护 ,导致我们的定时任务会偶发出现异常,比如:任务停止、任务项丢失、任务不

    2024年02月14日
    浏览(47)
  • C++轻量级单元测试框架

    单元测试是构建稳定、高质量的程序、服务或系统的必不可少的一环。通过单元测试,我们可以在开发过程中及时发现和修复代码中的问题,提高代码的质量和可维护性。同时,单元测试也可以帮助我们更好地理解代码的功能和实现细节,从而更好地进行代码重构和优化。

    2023年04月25日
    浏览(75)
  • Tomcat轻量级服务器

    目录 1.常见系统架构  C-S架构 B-S架构 2.B-S架构系统的通信步骤 3.常见WEB服服务器软件 4.Tomcat服务器的配置 下载安装 环境变量配置 测试环境变量是否配置成功 测试Tomcat服务器是否配置成功  Tomcat窗口一闪而过的解决步骤 Tomcat解决乱码 介绍: C-S架构即Client/Server(客户端/服务

    2023年04月14日
    浏览(140)
  • Kotlin 轻量级Android开发

    Kotlin 是一门运行在 JVM 之上的语言。 它由 Jetbrains 创建,而 Jetbrains 则是诸多强大的工具(如知名的 Java IDE IntelliJ IDEA )背后的公司。 Kotlin 是一门非常简单的语言,其主要目标之一就是提供强大语言的同时又保持简单且精简的语法。 其主要特性如下所示: 轻量级:这一点对

    2024年02月07日
    浏览(160)
  • 108中超轻量级的加载动画!

    大家好,我是【程序视点】小二哥! 今天要上的菜不是 Animate.js,也不是 Move.js,而是能提供108种加载动画的库: Whirl . 话不多说,直接来看例子。 以上只是冰山一角。whirl的CSS加载动画集合中有108种选项供你挑选。选中喜欢的动画后,点击“Grab the CSS on Github!”。 将跳转到

    2024年02月03日
    浏览(56)
  • 轻量级Web框架Flask(二)

    MySQL是免费开源软件,大家可以自行搜索其官网(https://www.MySQL.com/downloads/) 测试MySQL是否安装成功 在所有程序中,找到MySQL→MySQL Server 5.6下面的命令行工具,然后单击输入密码后回车,就可以知道MySQL数据库是否链接成功。 右击桌面上的“计算机”,在弹出的快捷键菜单中

    2023年04月15日
    浏览(72)
  • python轻量级性能工具-Locust

    Locust基于python的协程机制,打破了线程进程的限制,可以能够在一台测试机上跑高并发 1.快慢:衡量系统的处理效率:响应时间 2.多少:衡量系统的处理能力:单位时间内能处理多少个事务(tps) 性能测试根据测试需求最常见的分为下面三类 1 负载测试load testing 不断向服务

    2024年02月02日
    浏览(52)
  • Containerd【轻量级容器管理工具】

    Kubernetes v1.24 之前的版本直接集成了 Docker Engine 的一个组件,名为 dockershim [用于调用Docker]。 这种特殊的直接整合不再是 Kubernetes 的一部分 (这次删除被作为 v1.20 发行版本的一部分宣布)。 这意味Kubernetes从版本1.24开始就弃用Docker作为容器运行时,取而代之的是更加轻量级的

    2024年02月13日
    浏览(46)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包