Een omgevingsvariabele is een dynamische waarde die het besturingssysteem en andere software kunnen gebruiken om informatie te bepalen die specifiek is voor uw computer.
Met andere woorden, het is iets dat iets anders vertegenwoordigt, zoals een locatie op je computer, een versienummer, een lijst met objecten, enz.
Omgevingsvariabelen zijn omgeven door het procentteken (%), zoals in %temp%, om ze te onderscheiden van gewone tekst.
Er zijn twee typen: gebruikersomgevingsvariabelen en systeemomgevingsvariabelen.
Gebruikersomgevingsvariabelen
Gebruikersomgevingsvariabelen, zoals de naam al doet vermoeden, zijn omgevingsvariabelen die specifiek zijn voor elk gebruikersaccount.
Dit betekent dat de waarde van een variabele wanneer ingelogd als één gebruiker kan verschillen van de waarde van dezelfde variabele wanneer ingelogd als een andere gebruiker op dezelfde computer.
Dit soort omgevingsvariabelen kan handmatig worden ingesteld door elke gebruiker die is ingelogd, maar Windows en andere software kunnen ze ook instellen.
Een voorbeeld van een gebruikersomgevingsvariabele is %homepath%. Op één Windows 11-computer heeft die variabele bijvoorbeeld de waarde Users\Tim, de map die alle gebruikersspecifieke informatie bevat.
Een gebruikersomgevingsvariabele kan ook op maat zijn. Een gebruiker kan iets maken als %data%, wat kan verwijzen naar een map op de computer zoals C:\Downloads\Files. Een omgevingsvariabele als deze zou alleen werken als die specifieke gebruiker is ingelogd.
U kunt een aangepaste gebruikersomgevingsvariabele gebruiken als u snelkoppelingen wilt gebruiken om uw computer te omzeilen. Of, als u vooruit dacht en een script bouwde dat naar een omgevingsvariabele verwijst, kunt u de map altijd later wijzigen zonder dat u alle code in het script hoeft aan te passen.
Systeemomgevingsvariabelen
Systeemomgevingsvariabelen reiken verder dan slechts één gebruiker en zijn van toepassing op elke gebruiker die zou kunnen bestaan of in de toekomst wordt gemaakt. De meeste systeemomgevingsvariabelen verwijzen naar belangrijke locaties zoals de Windows-map.
Enkele van de meest voorkomende omgevingsvariabelen in Windows-systemen zijn %path%, %programfiles%, % temp%, en %systemroot%, hoewel er vele anderen zijn.
Als u bijvoorbeeld Windows installeert, wordt %windir% ingesteld op de map waarin het is geïnstalleerd. Aangezien de installatiemap iets is dat het installatieprogramma (dat ben jij… of je computermaker) op de ene computer kan definiëren, kan het C:\Windows zijn, maar op een andere kan hetzijn. C:\Win10
Voortzetting van dit voorbeeld, laten we zeggen dat Microsoft Word op elk van deze computers is geïnstalleerd nadat Windows klaar is met instellen. Als onderdeel van het Word-installatieproces moeten een aantal bestanden worden gekopieerd naar de map waarin Windows is geïnstalleerd. Hoe weet Word zeker dat het de bestanden op de juiste plaats installeert als die plaats C:\ is Windows op de ene computer en ergens anders op de andere?
Om een potentieel probleem als dit te voorkomen, is Microsoft Word, evenals de meeste software, ontworpen om te installeren in %windir%, niet in een specifieke map. Op deze manier weet u zeker dat deze belangrijke bestanden in dezelfde map als Windows worden geïnstalleerd, waar dat ook is.
Zie Microsoft's pagina met erkende omgevingsvariabelen voor een gigantische lijst met gebruikers- en systeemomgevingsvariabelen die vaak in Windows worden gebruikt.
Hoe de waarde van een omgevingsvariabele te vinden
Er zijn verschillende manieren om te zien wat een bepaalde omgevingsvariabele is.
Command Prompt Echo Command
In de meeste gevallen, althans in Windows, is de meest eenvoudige en waarschijnlijk snelste manier om dit te doen via een eenvoudig opdrachtpromptcommando genaamd echo.
Open de opdrachtprompt en voer de volgende opdracht exact uit, natuurlijk, waarbij je %temp% vervangt door de omgevingsvariabele waarin je geïnteresseerd bent:
echo %temp%
Let op de waarde die er direct onder wordt weergegeven. echo %temp% kan bijvoorbeeld dit produceren:
C:\Users\Jon\AppData\Local\Temp
Als u alle omgevingsvariabelen tegelijk wilt weergeven, voert u gewoon set uit vanaf de opdrachtregel. Of probeer set user voor een lijst van alle variabelen die beginnen met user (het werkt met elk voorvoegsel).
De uitvoer ziet er ongeveer zo uit, waarbij de naam van de variabele eerst wordt vermeld, gevolgd door =, en dan de waarde:
ALLUSERSPROFILE=C:\ProgramData
APPDATA=C:\Users\jonfi\AppData\Roaming
asl. log=Destination=file
CommonProgramFiles=C:\Program Files\Common Files
CommonProgramFiles(x86)=C:\Program Files (x86)\Common Files
CommonProgramW6432=C:\Program Files\Common Files
COMPUTERNAME=DESKTOP-IAEQDK8
ComSpec=C: \WINDOWS\system32\cmd.exe
configsetroot=C:\WINDOWS\ConfigSetRoot
DriverData=C:\Windows\System32\Drivers\DriverData
HOMEDRIVE=C:HOMEPATH=\Users\jonfiLOCALAPPDATA=C:\Users\jonfi\AppData\Local LOGONSERVER=\\DESKTOP-IAEQDK8
Voer set > ev.txt in om de uitvoer van de opdracht om te leiden naar een bestand om de hele lijst met omgevingsvariabelen op te slaan in een TXT-document.
PowerShell Write-Output Command
Je kunt ook Windows PowerShell gebruiken om te zien waar een bepaalde omgevingsvariabele naar verwijst, maar de syntaxis is een beetje anders. Hier zijn twee manieren om het te doen:
Write-Output $env:temp
echo $Env:temp
Gebruik deze opdracht om alle variabelen bij elkaar te zien:
Get-ChildItem Env:
Systeemeigenschappen
Als opdrachtregelprogramma's je bang maken (dat zouden ze niet moeten doen), is er een langere manier om de waarde van een omgevingsvariabele te controleren.
Ga naar het Configuratiescherm en vervolgens naar de systeemapplet. Kies daar Geavanceerde systeeminstellingen en vervolgens Omgevingsvariabelen onderaan. Dit is een onvolledige lijst, maar degenen die worden vermeld hebben de waarden ernaast.
Linux printenv Commando
Op Linux-systemen kunt u de opdracht printenv vanaf de opdrachtregel uitvoeren om alle omgevingsvariabelen weer te geven die momenteel zijn gedefinieerd.