Könyvtár hozzáadása a PATH -hoz Linux alatt

How Add Directory Path Linux



A PATH egy előre meghatározott változó egy Linux shellben. Könyvtárakból áll, a könyvtár elérési útjaival, a gyökértől kezdve. A PATH kettősponttal elválasztott lista. Minden könyvtárat az útvonalával kettősponttal választanak el az előző könyvtáratól. A shell parancsokat keres ezekben a könyvtárakban.

A parancsok nem csak lemez operációs rendszer parancsok. Az útvonal azoknak a könyvtáraknak a listája, amelyekben a héj az operációs rendszer parancsait és más parancsokat keres. A parancsok olyanok, mint a rövid programfájlok. Tehát a parancsok végrehajthatók. A számítógépre telepített minden alkalmazáshoz tartozik egy végrehajtható fájl. Az alkalmazás futtatásához először a végrehajtható fájlt kell bekapcsolni. Ezeket a futtatható fájlokat parancsoknak is nevezik.







A PATH változó nélkül minden parancs az abszolút útvonallal lenne vezérelve, mint pl.



/home/john/dir1/dir2/command.exe



ahol az első / a gyökérkönyvtár; john a felhasználó felhasználói címtára, John; dir1 és dir2 alkönyvtárak; és a command.exe a végrehajtható fájl neve.





A végrehajtható fájlnak sok más neve is lehetséges. Valójában a command.exe szimbolikus. Tehát, ha a/home/john/dir1/dir2 könyvtár (fájl nélkül) a PATH változóban van, a john felhasználó végrehajtja a command.exe parancsot, [email protected]: ~ $ egyszerűen beírva, command.exe, az előző útvonal nélkül. Vagyis:

[email védett]: ~ $command.exe

majd nyomja meg az Enter billentyűt.

A számítógépen a PATH könyvtárak aktuális listájának megtekintéséhez írja be:

$kidobta $ PATH

és nyomja meg az Enter billentyűt a terminálon. Az eredmény valami ilyesmi lenne,

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

A kérdés most az: hogyan adható hozzá egy könyvtár (és az azt megelőző elérési út) a PATH változóhoz? Egyes telepítéseknél a könyvtár automatikusan hozzáadásra kerül. Másoknál manuálisan kell hozzáadni. Ez a cikk a könyvtár hozzáadásának két fő módját ismerteti. A könyvtár nem kerül hozzáadásra (tartalmazza), mint egy tömbhöz. A két fő módszert ideiglenes és állandó kiegészítésnek nevezik. A Bash a héj, amelyet a cikk kódpéldáihoz használnak.

Cikk tartalma

Ideiglenes kiegészítés

Az ideiglenes hozzáadás azt jelenti, hogy a hozzáadás csak a memóriában történik. A számítógép újraindításakor nem kerül felhasználásra.

A Bourne Shell beépített exportálási parancs

Leegyszerűsítve az export parancs:

$export [név[= érték]]

Ebben az esetben újraértéket rendel egy változóhoz a memóriában.

A PATH változónak a memóriában már lehet olyan értéke, mint pl.

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

Tegyük fel, hogy a hozzáadni kívánt könyvtár a/home/john/dir1/dir2. Ha az export parancs a következőképpen van beírva:

$export PÁLYA=/itthon/János/dir1/dir2

akkor a/home/john/dir1/dir2 lecserélné mindazt, ami már a memóriában van a PATH változó értékeként.

Ha az export parancs a következőképpen van beírva:

$export PÁLYA=$ PATH:/itthon/János/dir1/dir2

Ekkor a/home/john/dir1/dir2 a változó elejéhez kötődne. Tehát az új változó a következő lenne:

PATH =/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/ home/john/dir1/dir2

Figyelje meg, hogy a fenti kód előző sorában az értéknek azt a részét, amely már ott van, kettősponttal választja el az új résztől, amely „:”. $ PATH a kód sorában, kibővül (helyébe lép) a memóriában már szereplő PATH értékkel.

Most ugyanaz a parancs több könyvtárban is lehet. Ha egy végrehajtható parancsot az előző elérési út nélkül ír be a parancssorba, a shell elkezdi keresni a PATH változó értékét (karakterláncát) a memóriában, balról jobbra. Tehát a fenti kódsorral a/home/john/dir1/dir2 végre megérkezik a kereséshez. Ki akarja, hogy a címtára utoljára érkezzen? - Senki. Tehát a könyvtár felvételének (hozzáadásának) jobb módja a következő:

$export PÁLYA=/itthon/János/dir1/dir2:$ PATH

A/home/john/dir1/dir2 most az elején van, elválasztva a következő könyvtártól, kettősponttal. Tehát az [email protected] paranccsal: ~ $,

[email védett]: ~ $export PÁLYA=/itthon/János/dir1/dir2:$ PATH

az Enter begépelése és megnyomása után a parancs, command.exe a dir2 könyvtárban a következőképpen hajtódik végre:

[email védett]: ~ $command.exe

Amíg a számítógép nincs leállítva, a felhasználó továbbra is végrehajtja a command.exe parancsot az előző elérési út beírása nélkül.

A számítógép leállításakor a véletlen hozzáférésű memóriából minden törlődik. A rossz hír az, hogy a számítógép -felhasználónak meg kell ismételnie ezt a folyamatot, amikor a számítógép újraindításakor hozzáadja könyvtárát a PATH változóhoz. Ma senki nem akarja ezt csinálni. Tehát az állandó kiegészítés az ajánlott megközelítés. Vagyis a PATH kiegészítését el kell menteni (a merevlemezre).

Állandó kiegészítés

A fenti vita alapján az ötlet az, hogy mentse a módosítást (a merevlemezre). Tehát, ha a módosítást egy fájlba menti, amelyet a shell minden alkalommal beolvassa, amikor a számítógép elindul, az rendben lesz. Vagyis minden alkalommal, amikor a számítógép elindul, a memória PATH változója megfelelően frissül. Amikor a számítógép elindul, a rendszerindításkor bizonyos fájlokat olvas. A Bash shell for Linux egyik fájlja a ~/.bashrc. A fájl neve. bashrc , kezdve a ponttal. A felhasználó könyvtárában található.

A Bash csak egy héj, valószínűleg a Linux legnépszerűbb héja. A Linux másik héja a Zsh. Zsh esetén a megfelelő fájl ~/. zshrc , még mindig a felhasználó könyvtárában. Amikor a shell elindul, a rendszerindításkor ezt a fájlt olvassa be. Bash esetén a fájl ~/.bashrc. Tehát, ha a fenti hozzáadási kódot beírja a ~/.bashrc fájlba, akkor a könyvtár mindig a memóriában lesz, mivel a ~/.bashrc mindig tartalmazza a PATH -ban, minden alkalommal, amikor a számítógép elindul. A memóriában marad, amíg a számítógép le nem áll.

A Bash -ban a ~/.bashrc rejtett fájl, így a parancs szokásos használata, ls nem jeleníti meg. A ~/.bashrc tartalmaz néhány Bash (shell) parancsot. Az Ubuntu a Linux egyik változata. Az Ubuntu szövegszerkesztővel rendelkezik. A szerző számítógépében az Ubuntu szövegszerkesztő háttere fekete.

A fenti hozzáadási parancsot (felszólítás nélkül) bele kell foglalni a ~/.bashrc fájlba. Jó, ha hozzáadja a fájl végéhez, hogy ne rontsa el a rendelkezésre álló tartalmat, ez valószínűleg jól működik.

A ~/.bashrc megnyitásához az Ubuntuban írja be a következőt a terminál parancssorába, és nyomja meg az Enter billentyűt:

$nano~/.bashrc

Ahol a nano a szövegszerkesztő. Itt a nano egy parancs (végrehajtható), amelynek argumentuma ~/.bashrc. A fájl tartalmának meg kell nyílnia a szövegszerkesztőben, hogy átfedje a terminál ablakát.

A ~/.bashrc fájl megnyílik a szövegszerkesztőben, valószínűleg fekete háttérrel. A kurzor villogni fog a bal felső sarokban.

Nyomja le folyamatosan a lefelé mutató nyilat a billentyűzeten, amíg a kurzor el nem éri a fájl végét. Új sor hozzáadása,

$export PÁLYA=/itthon/János/dir1/dir2:$ PATH

Ez nem minden. A ~/.bashrc fájl módosítása nincs mentve. A módosított fájl mentéséhez nyomja meg a Ctrl+o billentyűkombinációt, és kövesse a megjelenő utasításokat. A szövegszerkesztőből való kilépéshez nyomja meg a Ctrl+x billentyűkombinációt, és a normál terminálablak helyettesítse a szövegszerkesztő ablakát. Ezután más shell parancsok is kiadhatók.

Echo $ PATH kiadása esetén az új könyvtár nem jelenik meg a kijelzőn. Innen két módon folytathatja: vagy indítsa újra a számítógépet, vagy a forrás paranccsal töltse be a memóriába a ~/.bashrc fájl új tartalmát. A source parancs használata egyszerű, az alábbiak szerint:

$forrás~/.bashrc

Ha a forrásparancsot újraindítás nélkül adják ki, akkor az echo $ PATH megjeleníti az eredményhez hozzáadott új könyvtárat (kijelző). Az érdeklődési parancs ezután begépelhető az előző útvonal nélkül.

Jegyzet: Ne keverje össze a PATH érték (lista) végét és a ~/.bashrc fájl végét. Ezenkívül ne keverje össze a memóriában található PATH könyvtárat és a merevlemez könyvtárában lévő végrehajtható fájlt.

Következtetés

A PATH a Linux shell-ekbe épített változó. A PATH értéke a kettősponttal elválasztott könyvtárak listája. Mindegyik könyvtárhoz tartozik egy parancs (végrehajtható fájl) a merevlemezen. Ha egy parancsot adnak ki az eladáson anélkül, hogy azt elérési útvonallal előznék meg, akkor a parancsértelmező ezekben a könyvtárakban keresni fogja a parancsot. Ha nem látja a parancsot egyik könyvtárban sem, akkor a parancs nem lesz végrehajtva. Ebben az esetben a parancs végrehajtásához a parancsot meg kell előzni az útvonalával. A parancs több könyvtárban is lehet a PATH értékben. Amint a shell látja a parancsot tartalmazó első könyvtárat, végrehajtja a parancsot. A PATH érték valójában kettősponttal elválasztott könyvtárakból álló karakterlánc.

A probléma az, hogyan kell hozzáadni az új alkalmazás futtatható könyvtárát a PATH -hoz. Bizonyos esetekben ezt automatikusan elvégzi az új alkalmazás telepítőprogramja. Más esetekben ezt manuálisan kell elvégezni. Kétféleképpen lehet ezt manuálisan elvégezni, az úgynevezett ideiglenes és állandó kiegészítés. Az ideiglenes hozzáadás az export parancsot használja, és csak hozzáadja a könyvtárat, miközben a számítógép be van kapcsolva. A Permanent kiegészítésnek el kell mentenie az exportálás parancssorát a ~/.bashrc inicializáló fájlba (Bash) a későbbi műveletekhez.