Laatst geupdate op
Terwijl u uw Linux-systeem aanpast en configureert, moet u weten hoe u omgevingsvariabelen instelt. Laat ons je er doorheen leiden.
Als u een pc gebruikt, moet het besturingssysteem weten waar bepaalde bestanden moeten worden gevonden of hoe de tijd en datum moeten worden weergegeven. Windows doet dit meestal met configuratiebestanden en het register.
Op Unix-gebaseerde systemen zoals Linux, wordt dit ingesteld met omgevingsvariabelen. Weten hoe u omgevingsvariabelen in Linux instelt, kan een grote hulp zijn, en deze gids zal u op weg helpen.
Omgevings- en Shell-variabelen in Linux
Er zijn twee soorten van deze variabelen:omgeving en schelp. De omgevingsvariabele beïnvloedt het systeem als geheel, zowel op de opdrachtregel als in een grafische interface. Deze variabelen slaan zaken op zoals de standaard teksteditor of webbrowser, het pad naar uitvoerbare bestanden of de systeemlandinstellingen en toetsenbordindelingsinstellingen.
Een shell-variabele heeft daarentegen een beperkter bereik. Het is niet-persistent en is alleen van toepassing op de huidige shell (of opdrachtregel) instantie. De verschillende shell-omgevingen, zoals
Wat beide gemeen hebben, is het formaat. Elke omgeving en shell-variabele zal een van deze basisformaten volgen:
SLEUTEL=waarde. KEY="Enkele waarde inclusief spaties" KEY=waarde1:waarde2.
Houd rekening met de volgende vereisten bij het werken met omgevings- en shell-variabelen:
- De zaak is van belang. Omgevingsvariabelen moeten altijd hoofdletters hebben.
- Plaats nooit een spatie tussen de naam van de variabele, de = symbool en de waarde.
- Als een variabele meerdere waarden heeft, moeten deze worden gescheiden door de dubbele punt (:) karakter.
Omgevingsvariabelen weergeven en instellen in Linux
Er zijn verschillende opdrachten beschikbaar voor het weergeven, instellen en uitschakelen van omgevingsvariabelen in Linux. Waaronder:
- benijden: Met deze opdracht kunt u een ander programma in een aangepaste omgeving uitvoeren zonder de huidige te wijzigen. Zonder argumenten drukt het een lijst af van de huidige omgevingsvariabelen.
- printenv: Als u alle of een specifieke omgevingsvariabele wilt afdrukken, printenv is best handig.
- set: Deze opdracht wordt gebruikt om shell-variabelen in of uit te schakelen. Als je het zonder argument uitvoert, set zal een lijst met alle variabelen afdrukken, inclusief omgevings- en shell-variabelen evenals shell-functies.
- uitgeschakeld: De opdracht om shell- en omgevingsvariabelen te verwijderen.
- exporteren: dit is de opdracht die u het meest gebruikt om omgevingsvariabelen in te stellen.
Werken met omgevingsvariabelen
Voordat u omgevingsvariabelen gaat wijzigen, moet u altijd uw huidige configuraties controleren. Gebruik makend van printenv, kunt u erachter komen welke omgevings- en shell-variabelen uw Linux-systeem al heeft.
Om alle huidige omgevingsvariabelen te zien, voer je de printenv commando zonder argumenten. Waarschuwing, de uitvoer zal nogal lang zijn.
Om bijvoorbeeld de waarde van de. weer te geven THUIS variabele, zou u het volgende gebruiken.
jeff@UbuntuVM:~$ printenv HOME. /home/jeff. jeff@UbuntuVM:~$
U kunt ook meer dan één argument opgeven om printenv, om meerdere variabelen tegelijk te controleren.
jeff@UbuntuVM:~/documents$ printenv LANG PWD. nl_US. /home/jeff/documents. jeff@UbuntuVM:~/documents$
Enkele van de meest voorkomende omgevingsvariabelen die u tegenkomt zijn:
- GEBRUIKER: De huidige ingelogde gebruiker.
- THUIS: De basismap van de huidige gebruiker.
- EDITOR: De standaard teksteditor die wordt gebruikt als u typt bewerking op de opdrachtregel.
- SCHELP: Het pad van de shell van de huidige gebruiker, zoals bash of zsh.
- PAD: Een lijst met directory's die moeten worden doorzocht wanneer u een opdracht uitvoert. Linux doorzoekt deze mappen in de opgegeven volgorde, met behulp van de eerste overeenkomst die het vindt.
Nieuwe omgevingsvariabelen wijzigen of instellen
Er zijn twee stappen die u moet volgen om een omgevingsvariabele op Linux in te stellen. Eerst definieert u het als een shell-variabele. Vervolgens exporteert u het als een omgevingsvariabele. Dit commando stelt bijvoorbeeld een variabele in met de naam MY_VAR en definieert het als groovy.
jeff@UbuntuVM:~$ MY_VAR='groovy' jeff@UbuntuVM:~$
U ziet hier geen bevestiging van, maar u kunt controleren of het daadwerkelijk is ingesteld.
jeff@UbuntuVM:~$ echo $MY_VAR. hip. jeff@UbuntuVM:~$
Het commando geven printenv MY_VAR op dit punt zou geen uitvoer moeten worden geretourneerd, wat aangeeft dat er geen omgevingsvariabele is met de naam MY_VAR. Om dat te veranderen, gebruik je de exporteren opdracht.
jeff@UbuntuVM:~$ export MY_VAR. jeff@UbuntuVM:~$
Nutsvoorzieningen, printenv MY_VAR andere output moeten hebben.
jeff@UbuntuVM:~$ printenv MY_VAR. hip. jeff@UbuntuVM:~$
Natuurlijk is er een andere manier om dit te bereiken. U kunt omgevingsvariabelen op één regel instellen met een opdracht zoals deze:
jeff@UbuntuVM:~$ export MY_NEW_VAR="Nog een hippe variabele" jeff@UbuntuVM:~$
Een ding om op te merken is dat omgevingsvariabelen die op deze manier zijn ingesteld, alleen van toepassing zijn op de huidige sessie. Zodra u uitlogt of een nieuwe shell opent, gaan de omgevingsvariabelen verloren.
Omgevingsvariabelen instellen om persistent te zijn in Linux
Als je weet dat je omgevingsvariabelen moet gebruiken die blijven bestaan bij aanmeldingen, moet je ze definiëren in je bash-configuratiebestanden. Deze zijn op een paar plaatsen te vinden.
-
/etc/environment: Dit bestand stelt globale, systeembrede omgevingsvariabelen in die van toepassing zijn op alle shells en de GUI-omgeving. Deze zijn ingesteld in het volgende formaat:
FOO=bar. VAR_TEST=“Testvariabele”
-
/etc/profile: Deze worden geladen wanneer een bash login-shell wordt ingevoerd. Gebruik de exporteren opdracht om deze te declareren.
export JAVA_HOME=“/pad/naar/java/home”
- Door de gebruiker gedefinieerde shell-configuratiebestanden: Elke gebruiker kan zijn eigen configuratiebestanden voor de shell hebben. Voor bash, het bestand bevindt zich op ~/.bashrc. Declareer variabelen hier op dezelfde manier als u zou doen /etc/profile.
export PATH="$HOME/bin:$PATH"
Als je nieuwe omgevingsvariabelen hebt ingesteld en deze snel in je huidige shell-sessie wilt laden, hoef je niet uit te loggen. Gebruik gewoon de bron opdracht.
jeff@UbuntuVM:~$ bron ~/.bashrc. jeff@UbuntuVM:~$
Shell-variabelen configureren
U hoeft deze misschien niet zo vaak te declareren als omgevingsvariabelen, maar de set commando wordt gebruikt voor het instellen en weergeven van alle shell-variabelen. Als je ze allemaal wilt opsommen, geef je de opdracht gewoon zonder argumenten.
jeff@UbuntuVM:~$ set
De uitvoer zal waarschijnlijk vele pagina's lang zijn. Om het leesbaarder te maken, kunt u het door de minder opdracht:
jeff@UbuntuVM:~$ set | minder.
Als u een specifieke shell-variabele wilt afdrukken, kunt u ook de gebruiken echo opdracht.
jeff@UbuntuVM:~$ echo $BASH_VERSION. 5.0.17(1)-release. jeff@UbuntuVM:~$
Het instellen van een shell-variabele is net zo eenvoudig als het typen van de variabelenaam, de = symbool en de waarde.
jeff@UbuntuVM:~$ MY_VAR="groovy" jeff@UbuntuVM:~$
Beheer uw Linux-desktop of -server verstandig
Het instellen van shell- en omgevingsvariabelen kan een krachtige mogelijkheid zijn op een Linux-pc of -server, maar wees voorzichtig met hoe u dit aanpakt. Controleer altijd nogmaals wat u typt voordat u zich eraan vastlegt. Bij het wijzigen van bestanden zoals /etc/profile, wilt u misschien eerst een back-upbestand maken.
Voor wijzigingen op gebruikersniveau helpt het om te weten welke configuratiebestanden in gebruik zijn en waar u ze kunt vinden. Als je moeite hebt om een bepaald bestand te vinden, bevat Linux een aantal krachtige tools voor: uw harde schijven doorzoeken.
Hoe de cache, cookies en browsegeschiedenis van Google Chrome te wissen
Chrome doet uitstekend werk door uw browsegeschiedenis, cache en cookies op te slaan om uw browserprestaties online te optimaliseren. Haar is hoe te...