Setting environment variables on the command line on Windows, Linux, macOS

set ENV

Setting an environment variable on Linux and macOS can be done before we run some program.

$ python -c 'import os; print(os.getenv("NAME"))'
None

$ NAME=Foo python -c 'import os; print(os.getenv("NAME"))'
Foo

On Windows we need to do it separately:

In CMD:

> set NAME=Foo
> python -c "import os; print(os.getenv('NAME'))"
Foo

In PowerShell

> [Environment]::SetEnvironmentVariable("NAME", "Foo", "Process")
> python -c "import os; print(os.getenv('NAME'))"
Foo

Author

Gabor Szabo (szabgab) Gabor Szabo