Home Käyttöjärjestelmä PATH-muuttuja UNIXissa

PATH-muuttuja UNIXissa

2362 17/08/2021

PATH-muuttuja

Tämän asiakirjan lukemisen jälkeen sinun pitäisi tietää, mikä PATH-muuttuja on, kuinka se asetetaan ja kuinka voit tarkastella siinä olevia hakemistoja.

Motivaatio

Harkitse seuraavaa UNIX-pääteistuntoa:

dbettis@rhino[~]$ ls...

Kun kirjoitat komennon

ls

, komentotulkki suorittaa velvollisuudentuntoisesti komennon ja palauttaa tulokset sinulle. Pääteistunnon aikana kirjoitat lisää komentoja. Näihin kuuluvat mm

emacs

,

firefox

, niin edelleen ja edelleen. Mutta mistä nämä käskyt tulevat? Ilmeisesti ne sisällytetään, kun asennat käyttöjärjestelmän, mutta missä ne ovat?

UNIX-komento

mikä

kertoo täydellisen polun abinaariin, jonka se on suorittamassa. Esimerkiksi:

dbettis@rhino[~]$ joka ls/bin/ls

Tämä tarkoittaa, että komennon suoritustiedosto

ls

sijaitsee

/bin

. Vaihtoehtoisesti juosta

ls

, voit kirjoittaa komennon koko polun:

dbettis@rhino[~]$ /bin/ls...

Näyttää siltä, ​​että tässä on kuitenkin vähän taikuutta meneillään. Mistä järjestelmä tietää sen

ls

on mukana

/bin

? Tapa, jonka järjestelmä tietää, on

PATH

ympäristömuuttuja!

Ympäristömuuttujat

Ensinnäkin, mikä on ympäristömuuttuja? Se on muuttuja, joka säilyy pääteistunnon ajan. Istunnossa käynnissä olevat sovellukset käyttävät näitä muuttujia, kun he tarvitsevat tietoja käyttäjästä. Jos haluat nähdä luettelon kaikista ympäristömuuttujista, suorita seuraava:

dbettis@rhino[~]$ exportdeclare -x USER="dbettis"...

Muuttujan nimi on

KÄYTTÄJÄ

ja tuon muuttujan sisältö on

dbettis

. Toinen tapa nähdä ympäristömuuttujan sisältö on tehdä seuraava:

dbettis@rhino[~]$ echo $USERdbettis

PATH-ympäristömuuttuja

PATH-ympäristömuuttujalla on erityinen muoto. Katsotaan miltä se näyttää:

dbettis@rhino[~]$ echo $PATH/usr/local/bin:/bin:/usr/bin:/sbin:/usr/sbin:.

Se on pohjimmiltaan a

:

-eroteltu luettelo hakemistoista. Kun suoritat komennon, kuori

hakee jokaisesta näistä hakemistoista yksitellen

, kunnes se löytää hakemiston, jossa suoritettava tiedosto on olemassa. Muista, että löysimme

ls

sisään

/bin

, eikö?

/bin

on PATH-muuttujan toinen kohde. Joten poistetaan

/bin

alkaen

PATH

. Voimme tehdä tämän käyttämällä

näyttely

rt

komento:

< p>dbettis@rhino[~]$ vienti PATH=/usr/local/bin:/usr/bin:/sbin:/usr/sbin:.

Varmista, että muuttuja on asetettu oikein:

dbettis@rhino[~]$ echo $PATH/usr/local/bin:/usr/bin:/sbin:/usr/sbin:.

Jos yritämme juosta

ls

, kuori ei enää tiedä katsoa sisään

/bin

!

dbettis@rhino[~]$ ls-bash: ls: komentoa ei löydy

Kuten odotettiin,

ls

ei löydy enää. Lisätään

/bin

takaisin

PATH

, kuten

ls

on erittäin hyödyllinen asia.

dbettis@rhino[~]$ vienti PATH=/usr/local/bin:/bin:/usr/bin:/sbin:/usr/sbin:.

Lisätään kohteeseen PATH

On monia kertoja, joihin haluat liittää kohteen

PATH

. Katsotaan ensin, mikä on nykyinen

PATH

on:

dbettis@rhino[~]$ echo $PATH/usr/local/bin:/bin:/usr/bin:/sbin:/usr/sbin:.

Tieto

lisää

hakemisto on seuraava:

dbettis@rhino[~]$ vienti PATH=$POLKU:/uusi/polku

Tämä komento lisää

/uusi/polku

to

PATH

. Katsotaan onko päivitetty:

dbettis@rhino[~]$ echo $PATH/usr/local/bin:/bin:/usr/bin:/sbin:/usr/sbin:.:/new/path

Tämä tapahtuu joka kerta, kun kirjaudut sisään

Kotihakemistossasi on erityinen tiedosto nimeltä

.bashrc

UNIX:ssa käytäntö on, että tiedostot alkavat kirjaimella

.

ovat asetustiedostoja, joten ne pitäisi piilottaa näkyvistä.

ls

näyttää vain tiedostot, jotka alkavat kirjaimella a

.

jos läpäisi

-a

lippu. esim.

dbettis@rhino[~]$ ls -a

Joka tapauksessa tämä tiedosto (.bashrc) sisältää yksinkertaisesti luettelon komennoista. Jokainen näistä komennoista suoritetaan aina, kun luot uutiskuoren.

dbettis@rhino[~]$ cat .bashrcexport PATH="$PATH:/p/firefox/bin"..

Aina kun komentotulkki käynnistetään,

/p/firefox/bin

lisätään

PATH

. Jos haluat, että tiettyjä hakemistoja lisätään automaattisesti

PATH

, sijoita ne komennot tämän tiedoston loppuun. Kirjaudu ulos ja kirjaudu takaisin sisään nähdäksesi muutokset. Vaihtoehtoisesti voit ladata tiedoston sisällön nykyisessä istunnossa:

dbettis@rhino[~]$ . .bashrc

Latest: Norton 360 Platinum 2021 – Antivirus software for 20 Devices with Auto Renewal - 3 Months FREE - Includes VPN, PC Cloud Backup & Dark Web Monitoring [Download]
Next: How to Update USB Drivers on Windows 10 (Automatic and Manual)
Popular Articles/span>
Back to top