LINUX BASICS IN 3 MINS : $PATH ENVIRONMENT VARIABLE
Inhoudsopgave:
Wanneer u een opdracht op de opdrachtregel typt, zegt u in principe dat de shell een uitvoerbaar bestand met de opgegeven naam moet uitvoeren. In Linux leven deze uitvoerbare programma's zoals
ls
,
find
,
file
en andere gewoonlijk in verschillende mappen op uw systeem. Elk bestand met uitvoerbare machtigingen die in deze mappen zijn opgeslagen, kan vanaf elke locatie worden uitgevoerd. De meest voorkomende mappen met uitvoerbare programma's zijn
/bin
,
/sbin
,
/usr/sbin
,
/usr/local/bin
en
/usr/local/sbin
.
Maar hoe weet de shell, welke mappen om te zoeken naar uitvoerbare programma's of doorzoekt de shell het hele bestandssysteem?
Het antwoord is simpel. Wanneer u een opdracht typt, zoekt de shell in alle mappen die zijn opgegeven in de variabele
$PATH
naar een uitvoerbaar bestand met die naam.
Dit artikel laat zien hoe u mappen kunt toevoegen aan uw
$PATH
in Linux-systemen.
Wat is
$PATH
in Linux
De omgevingsvariabele
$PATH
is een door dubbele punten gescheiden lijst met mappen die de shell vertelt welke mappen moeten worden gezocht naar uitvoerbare bestanden.
Om te controleren welke mappen zich in uw
$PATH
, kunt u de opdracht
printenv
of
echo
gebruiken:
echo $PATH
De uitvoer ziet er ongeveer zo uit:
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
Een map toevoegen aan uw
$PATH
Er zijn situaties waarin u misschien andere mappen wilt toevoegen met de variabele
$PATH
. Sommige programma's kunnen bijvoorbeeld op verschillende locaties zijn geïnstalleerd of u wilt misschien een speciale map voor uw persoonlijke scrips, maar u kunt ze uitvoeren zonder het absolute pad naar de uitvoerbare bestanden op te geven. Om dit te doen, hoeft u alleen de map toe te voegen aan uw
$PATH
.
Stel dat u een map met de naam
bin
in uw basismap hebt waarin u uw shellscripts bewaart. Om de map toe te voegen aan uw
$PATH
typt u in:
export PATH="$HOME/bin:$PATH"
De
export
exporteert de gewijzigde variabele naar de shell-kindprocesomgevingen.
U kunt nu uw scripts uitvoeren door de uitvoerbare scriptnaam te typen zonder het uitvoerbare volledige pad te hoeven opgeven.
Deze wijziging is echter slechts tijdelijk en alleen geldig in de huidige shell-sessie.
Om de wijziging permanent te maken, moet u de variabele
$PATH
definiëren in de shell-configuratiebestanden. In de meeste Linux-distributies worden bij het starten van een nieuwe sessie omgevingsvariabelen gelezen uit de volgende bestanden:
-
Globale shell-specifieke configuratiebestanden zoals
/etc/environment
en/etc/profile
. Gebruik dit bestand als u wilt dat de nieuwe map wordt toegevoegd aan alle systeemgebruikers$PATH
.Shell-configuratiebestanden per gebruiker. Als u bijvoorbeeld Bash gebruikt, kunt u de variabele
$PATH
in het bestand~/.bashrc
instellen en als u Zsh gebruikt, is de bestandsnaam~/.zshrc
.
In dit voorbeeld stellen we de variabele in het bestand
~/.bashrc
. Open het bestand met uw teksteditor en voeg aan het einde de volgende regel toe:
nano ~/.bashrc
~ /.Bashrc
export PATH="$HOME/bin:$PATH"
Sla het bestand op en laad het nieuwe
$PATH
in de huidige shell-sessie met behulp van de opdracht
source
:
source ~/.bashrc
Om te bevestigen dat de map succesvol is toegevoegd, drukt u de waarde van uw
$PATH
door te typen:
Conclusie
Het toevoegen van nieuwe mappen aan uw gebruiker of de globale variabele
$PATH
is vrij eenvoudig. Hiermee kunt u opdrachten en scripts uitvoeren die op niet-standaardlocaties zijn opgeslagen zonder dat u het volledige pad naar het uitvoerbare bestand hoeft te typen.
Dezelfde instructies zijn van toepassing op elke Linux-distributie, inclusief Ubuntu, CentOS, RHEL, Debian en Linux Mint.
Als je nog vragen hebt, kun je een reactie achterlaten.
terminalWe besteden veel tijd aan het doorlezen van sociale netwerksites, maar dat is niet genoeg Dat betekent dat we allemaal sociale vlinders zijn. Het lijkt erop dat e-mail het nieuws van gisteren is geworden. Terwijl het controleren van e-mail vroeger onze belangrijkste reden was om online te gaan, besteden we nu meer van onze online tijd aan het surfen op sociale netwerken, volgens nieuwe nummers van Nielsen. We spenderen 23 procent van onze online tijd aan surfen op sociale netwerken zoals Faceboo
Dat nieuws hoeft mij niet per se te verbazen: ik kan 10 minuten doorbrengen op Facebook en verstrikt raken in de activiteiten van 25 verschillende mensen, terwijl het besteden van diezelfde 10 minuten aan e-mail me in staat zou stellen om veel nutteloze junkmail te verwijderen en misschien een bericht te lezen. Maar als ik echt stop om erover na te denken, houdt Facebook me niet echt beter verbonden met de meeste mensen. Hier zijn vijf redenen waarom.
Hoe een omslagfoto toe te voegen en het profiel aan te passen in nieuwe google +
Meer informatie over het toevoegen van een omslagfoto en het profiel aanpassen in nieuwe Google+.
Hoe Instagram-hoogtepunten toe te voegen zonder aan het verhaal toe te voegen
Wil je Instagram-hoogtepunten maken zonder ze eerst in een verhaal te publiceren? Bekijk de hack hier en wijzig ook covers zonder ze in een verhaal te plaatsen.