在VS Code调试模式下获取不正确的环境变量?

时间:2019-09-26 11:14:36

标签: python visual-studio-code environment-variables vscode-debugger vscode-remote

我正在使用VS Code的远程功能通过ssh进行编码,并正在尝试设置调试配置。我正在运行的python程序使用很多环境变量,这是一种情况:

user = os.environ.get("USER")

在调试模式下运行时,如果希望将其设置为用户名user,则将root设置为字符串tdeng。我尝试在配置文件中设置这些设置:

"env": { "USER" : "${env:USER}"},

"env": { "USER" : "tdeng"},

但是它们从不影响os.environ.get()-由于某种原因,它始终为root

我也尝试过此https://github.com/Microsoft/vscode-python/issues/436#issuecomment-361540371,但没有用。

当我直接使用集成的python环境在集成终端中运行程序时,程序运行良好。 (python program.py),它只是正常访问所有这些环境变量。有什么建议么?我渴望尝试在Internet上找到解决方案,但我不知道这是VS Code,远程扩展,我的配置文件还是我的开发环境的问题。

编辑: 启动配置如下所示:

{
    "name": "mia",
    "type": "python",
    "request": "launch",
    "sudo": true,
    "program": "/home/tdeng/a/bin/program.py",
    "env": { "USER" : "tdeng"},
}

我非常确定我正在运行正确的配置,因为我在调试下拉列表中单击了相同的名称。该程序还可以正常运行,并且正在导入正确的模块等,直到os.environ.get

0 个答案:

没有答案