Android

Sådan tilføjes et bibliotek til stien i Linux

SysTools PDF Watermark Remover | Delete PDF Watermarks Easily!

SysTools PDF Watermark Remover | Delete PDF Watermarks Easily!

Indholdsfortegnelse:

Anonim

Når du skriver en kommando på kommandolinjen, fortæller du dybest set, at shell skal køre en eksekverbar fil med det givne navn. I Linux lever disse eksekverbare programmer som ls , find , file og andre normalt i flere forskellige mapper på dit system. Enhver fil med eksekverbare tilladelser, der er gemt i disse mapper, kan køres fra ethvert sted. De mest almindelige mapper, der indeholder eksekverbare programmer, er /bin , /sbin , /usr/sbin , /usr/local/bin og /usr/local/sbin .

Men hvordan ved shell, hvilke mapper der skal søges efter eksekverbare programmer eller søger shell gennem hele filsystemet?

Svaret er enkelt. Når du skriver en kommando, søger shell gennem alle mapper, der er specificeret i variablen user $PATH efter en eksekverbar fil med dette navn.

Denne artikel viser, hvordan du tilføjer mapper til din $PATH i Linux-systemer.

Hvad er $PATH i Linux

Miljøvariablen $PATH er en kolonafgrænset liste over mapper, der fortæller skalen, hvilke mapper der skal søge efter eksekverbare filer.

For at kontrollere, hvilke mapper der er i din $PATH , kan du bruge enten printenv eller echo kommandoen:

echo $PATH

Outputet ser sådan ud:

/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin

Tilføjelse af en mappe til din $PATH

Der er situationer, hvor du måske ønsker at tilføje andre mapper $PATH variablen. For eksempel er nogle programmer muligvis installeret forskellige steder, eller du vil måske have et dedikeret bibliotek til dine personlige scrips, men være i stand til at køre dem uden at specificere den absolutte sti til de eksekverbare filer. For at gøre dette skal du blot tilføje kataloget til din $PATH .

Lad os sige, at du har et bibliotek, kaldet bin placeret i dit hjemmekatalog, hvor du opbevarer dine shell-scripts. Sådan føjes kataloget til din $PATH type i:

export PATH="$HOME/bin:$PATH"

export eksporterer den ændrede variabel til shell-barnes processmiljøer.

Du kan nu køre dine scripts ved blot at skrive det eksekverbare scriptnavn uden at skulle specificere den eksekverbare fulde sti.

Denne ændring er dog kun midlertidig og gælder kun i den aktuelle shell-session.

For at gøre ændringen permanent, skal du definere variablen $PATH i shell-konfigurationsfilerne. I de fleste Linux-distributioner, når du starter en ny session, læses miljøvariabler fra følgende filer:

  • Globale shell-specifikke konfigurationsfiler som /etc/environment og /etc/profile . Brug denne fil, hvis du vil have, at det nye bibliotek tilføjes til alle systembrugere $PATH .

    Specifikke konfigurationsfiler pr. Bruger. Hvis du f.eks. Bruger Bash, kan du indstille variablen $PATH i filen ~/.bashrc , og hvis du bruger Zsh, er filnavnet ~/.zshrc .

I dette eksempel indstiller vi variablen i filen ~/.bashrc . Åbn filen med din teksteditor, og tilføj følgende linje i slutningen af ​​den:

nano ~/.bashrc ~ /.Bashrc

export PATH="$HOME/bin:$PATH"

Gem filen, og indlæs den nye $PATH i den aktuelle shell-session ved hjælp af source :

source ~/.bashrc

For at bekræfte, at biblioteket blev tilføjet, skal du udskrive værdien af ​​din $PATH ved at skrive:

echo $PATH

Konklusion

Det er ret enkelt at tilføje nye mapper til din bruger eller den globale $PATH variabel. Dette giver dig mulighed for at udføre kommandoer og scripts, der er gemt på ikke-standardiserede placeringer uden at behøve at indtaste den fulde sti til den eksekverbare.

De samme instruktioner gælder for enhver Linux-distribution, herunder Ubuntu, CentOS, RHEL, Debian og Linux Mint.

Du er velkommen til at give en kommentar, hvis du har spørgsmål.

terminal