You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Linux系统下VSCode环境变量如何控制、重置或修改?

Ubuntu环境下VSCode保留旧环境变量的解决方法

问题根因

从Ubuntu收藏夹栏启动的应用,父进程为桌面会话管理器,启动时不会读取~/.profile等用户专属shell配置;同时VSCode的会话持久化机制会缓存上一次运行时的环境变量,即使重启系统也可能保留旧值。

可行解决方案

  • 修改启动项强制加载用户配置

    编辑VSCode的桌面启动文件,用户级路径为~/.local/share/applications/code.desktop,全局路径为/usr/share/applications/code.desktop,将其中的Exec字段修改为:
    Exec=bash -l -c "code %F"
    
    执行update-desktop-database更新桌面启动项缓存后,重新启动VSCode即可继承用户shell的完整环境变量。
  • 清空VSCode缓存后从shell启动

    首先完全终止所有VSCode进程:
    killall -9 code
    
    删除VSCode的会话缓存目录:
    rm -rf ~/.config/Code/Saved\ Session/
    
    随后直接从已验证环境变量正常的shell窗口执行code命令启动VSCode,此时VSCode会直接继承当前shell的环境变量,不会读取旧缓存。
  • 直接在VSCode中配置固定环境变量

    打开VSCode的settings.json配置文件,添加如下配置统一覆盖内置终端的环境变量:
    "terminal.integrated.env.linux": {
      "http_proxy": "",
      "https_proxy": "",
      "no_proxy": ""
    }
    
    如果需要修改VSCode直接运行应用的环境,在对应项目的.vscode/launch.json中添加env字段,把需要清除的代理变量设为空即可。

内容的提问来源于stack exchange,提问作者David M. Karr

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 09:45:02