Ako pridať adresár do systémovej cesty v Linuxe

V Linuxe premenná prostredia PATH ukladá názvy ciest, ktoré budú prehľadávané pre spustiteľné súbory všetkých príkazov zadaných v príkazovom riadku. Hodnota premennej prostredia PATH je reťazec obsahujúci sériu ciest, z ktorých každý je oddelený dvojbodkou. Napríklad štandardná PATH v typickom systéme môže vyzerať takto:

 / Usr / local / bin: / usr / bin: / bin: / usr / local / games: / usr / hry 

Keď do príkazového riadka napíšete príkaz ako cat, váš shell bude v každom z týchto adresárov hľadať spustiteľný súbor s názvom cat . Prvý z nich je ten, ktorý beží.

Ak chcete zobraziť aktuálnu hodnotu premennej prostredia PATH, môžete použiť príkaz echo . Ako pri všetkých premenných v shelle, aj keď odkazujete na hodnotu, ktorú potrebujete, aby ste pred názov premennej vložili znak dolára:

 echo $ PATH 

Vo vyššie uvedenom príklade aktuálna hodnota cesty vás vráti na príkazový riadok.

Nastavenie PATH pre vašu aktuálnu reláciu shell

Hodnotu PATH môžete nastaviť tak, ako by ste použili akúkoľvek inú premennú shellu, s formulárom NAME = VALUE, ako je tento:

 PATH = / moje / first / path: moje / s / path 

Problém s týmto príkazom je, že úplne prepíše hodnoty, ktoré ste mali predtým, čo pravdepodobne nechcete. Ak chcete k starým pridať aj novú hodnotu. Môžete to dosiahnuť odkazom na PATH v novej definícii, ako je táto:

 PATH = $ PATH: / moje / nový / path 

Pomocou príkazu vyššie pridáte novú cestu k aktuálnej hodnote PATH . Vzhľadom k tomu, že cesty sú prehľadávané v poradí, pravdepodobne budete chcieť pridať novú cestu na koniec premennej, ako sme to tu urobili. Ak ste zadali:

 PATH = / moje / nový / path: $ PATH 

Vaša nová cesta bude prehľadávaná pred, nie po, predvolenými systémovými cestami.

Pomocou exportu prejdite premennú prostredia PATH na procesy dieťaťa

Tento typ definície PATH nastaví premennú prostredia pre vašu aktuálnu reláciu shell, ale žiadne nové spustené programy nemusia vidieť novú cestu, ktorú ste pridali. Je to preto, že váš shell vám umožňuje kontrolovať prostredie tým, že vyžaduje, aby ste manuálne deklarovali, aké premenné prostredia sa odovzdajú iným programom a procesom. Môžete to dosiahnuť pomocou príkazu export . Ak spustíte:

 export PATH 

Všetky procesy, ktoré spustíte, kým sa neodhlásite, budú používať aktuálnu hodnotu PATH .

Ak dávate prednosť, môžete tieto dva príkazy skombinovať do jedného riadka, aby ste to uľahčili. Stačí vložiť bodkočiarku, aby shell vedel, že sú to samostatné príkazy:

 PATH = $ PATH: / my / new / path: / my / other / new / path; exportovať PATH 

Tip: Ak má niektorá z vašich ciest v nich medzery, mali by ste definíciu premennej vložiť do úvodzoviek, aby boli bezpečné:

 PATH = "$ PATH: / uvedenie / medzery v názvoch ciest: / značky / život veľmi / nepohodlné"; export PATH 

Nastavenie premennej PATH pre každú novú reláciu shell

Metódy, ktoré sme doteraz používali, nastavujú iba premennú prostredia pre vašu aktuálnu reláciu shell; keď sa odhlásite alebo zatvoríte okno terminálu, vaše zmeny budú zabudnuté. Ak chcete nastaviť PATH na určitú hodnotu zakaždým, keď sa prihlásite alebo spustíte novú reláciu shell, mali by ste ju pridať do skriptu pri spustení bash. Zakaždým, keď spustíte interaktívnu reláciu shell, bash prečíta nasledujúce súbory v poradí (ak existujú) a vykoná príkazy v nich:

/ etc / profile ~ / .bash_profile ~ / .bash_login

~ / .Profile

Prvý súbor / etc / profile je predvolený spúšťací skript pre každého používateľa v systéme. Jeden alebo viac zostávajúcich troch súborov sa nachádza v domovskom adresári každého používateľa. Ktorýkoľvek z týchto troch môže byť použitý, ale je dôležité vedieť, že budú vyhľadávané v tomto poradí.

Tieto súbory môžete upravovať a manuálne meniť ľubovoľné riadky obsahujúce definície PATH = . Buďte opatrní, ak tak urobíte, pretože to sú adresáre používané na vyhľadanie dôležitých súborov operačného systému.

Ak všetko, čo chcete urobiť, je pridať cestu pre vášho aktuálneho používateľa, môžete nechať ostatné PATH = riadky nedotknuté a pridať koniec, ako je tento, na koniec súboru:

 PATH = "$ PATH: / new / path"; exportovať PATH 

Ak to pridáte na koniec súboru .bash_profile vo vašom domovskom adresári, prejaví sa vždy, keď používateľ spustí novú reláciu shellu. Ak to pridáte do / etc / profile, prejaví sa to pre každého používateľa v systéme. Ak chcete upraviť / etc / profile, musíte mať práva administrátora, takže môžete použiť sudo (alebo byť prihlásený ako root).