Nastavení environment variables (proměnné prosředí) na macOS

Miroslav Holec

Miroslav Holec

12. srpna. 2019

Při vývoji ASP.NET Core aplikací se může hodit občas nastavit proměnné prostředí na macOS. Jak se podívat na aktuální nastavení a jak proměnné změnit zvládněte hravě pomocí tohoto jednoduchého návodu.

Environment Variables v ASP.NET Core

Proměnné prostředí si ASP.NET Core aplikace nejprve načítají pro konfiguraci host prostředí. Na základě něj následně provádí konfiguraci samotné aplikace a i při té si na proměnné prostředí znovu sahají. Dále také platí, že proměnné prostředí:

  1. se nastavuji ze systémových proměnných prostředí operačního systému,
  2. následně se přepisují tím, co je v souboru launchsettings.json

Takže pokud launchsettings.json používáte, dost možná vůbec nepotřebujete proměnné prostředí měnit a stačí vám nastavit si je v tomto souboru.

Aktuální proměnné prostředí

Pro aktuální přehled proměnných prostředí (environment variables) stačí spustit terminál a zadat příkaz:

printenv

Tím získáte přehled všech proměnných. Chcete-li znát hodnotu jedné konkrétní proměnné, použijte:

echo $nazev_promenne

Pro nastavení proměnné prostředí jako dočasné, což se hodí pro účely ladění, stačí zavolat:

export $nazev_promenne=hodnota

Permanentní nastavení proměnné prostředí

Jestliže danou hodnotu budete chtít nastavit permanentně, což je spíše ojedinělý případ, je ideální nastavit ji pro aktuálního uživatele (vás). Nastavení se ukládá do speciálního souboru .bash_profile. Cestu k němu najdete pomocí příkazu:

~/.bash_profile

Terminál vám oznámí, kde tento soubor najdete, takže jej můžete otevřít a upravit. Lze tak učinit v libovolném editoru, například nano:

nano /Users/mholec/.bash_profile

A v tomto souboru nyní přidáte řádek s příkazem export, podobně jako v příkladu výše:

export $nazev_promenne=hodnota

Aby se projevily permanentní proměnné prostředí, je nutné znovu spustit terminálové okno. To si opětovně načte změněný bash profile.


👨‍🎓 Podzimní školení
👍 Změny v ASP.NET Core 3.0
👍 Vývoj REST služeb v .NET Core
👍 ASP.NET Core Blazor