使用 .NET Core 在 Unix/Linux 环境中设置环境变量

And*_*tte 3 c# environment-variables .net-core

有没有办法使用 .NET Core 在 Unix/Linux 机器(不是进程)上设置环境变量?

我注意到我可以将 Environment.SetEnvironmentVarible 用于 Windows,但是,在搜索之后我没有找到 Unix/Linux 系统的等效项。

Jul*_*ian 5

Environment.SetEnvironmentVariable 也适用于 Linux 等。

但要注意只设置当前进程环境变量,而不是像 Windows 上的机器或用户环境变量:

在 macOS 和 Linux 系统上的 .NET Core 上,将忽略对值为 EnvironmentVariableTarget.Machine 或 EnvironmentVariableTarget.User 的 SetEnvironmentVariable(String, String, EnvironmentVariableTarget) 方法的调用。

来自Environment.SetEnvironmentVariable 方法

  • Linux 上没有区分进程变量、用户变量和机器变量。所有环境变量都被同等对待。一个进程只能改变它自己和它产生的任何子进程的环境变量。 (3认同)