Az Önhöz hasonló olvasók támogatják a MUO-t. Amikor a webhelyünkön található linkek használatával vásárol, társult jutalékot kaphatunk.
Az abszolút és relatív elérési út nevek kétféle módon határozhatók meg egy könyvtár vagy fájl virtuális címe Linux rendszeren. De mi a különbség a két útvonaltípus között, és melyiket használja a parancsokban? Találjuk ki.
Relatív és abszolút utak Linuxban
Ha valaha használt argumentumalapú Linux-parancsot, például a cd-t vagy az ls-t, akkor tudja, hogy többféleképpen is megadhatja egy könyvtár vagy fájl elérési útját.
Előfordulhat, hogy inkább ragaszkodjon a normál elérési út-kifejezésekhez, vagy ha Ön haladó Linux-felhasználó, összetett reguláris kifejezéseket használjon a fájl- vagy könyvtárnév átadásához egy programnak. Akárhogy is, Linuxon csak kétféleképpen lehet könyvtárútvonalat megadni: az abszolút elérési utat és a relatív elérési utat.
Abszolút útvonal kifejezések
Az abszolút elérési út mindig a gyökérkönyvtárból indul, és a tényleges könyvtárban vagy fájlban végződik, amelyre mutatni szeretne. Abszolút elérési út kifejezés használata közben be kell írnia a hierarchiában található összes olyan alkönyvtárnevet, amely a végső helyre vezet.
Például ha rá akarsz mutatni /myfolder/folder2 benne /var/www abszolút elérési út kifejezést használó könyvtárban a következőket kell használnia:
/var/www/myfolder/folder2
...hol a / a kifejezés elején a Linux gyökérkönyvtárára utal.
Relatív útvonal kifejezések
A relatív elérési út ezzel szemben olyan elérési út kifejezésre utal, amely egy másik elérési utat (általában a jelenlegi munkakönyvtárat) használ gyökérként vagy bázisként. Ahogy a neve is sugallja, ez "relatív" a rendszeren lévő meglévő útvonalhoz.
Például, ha jelenleg a /var/www könyvtárat, és rá kell mutatni /myfolder/folder2, a következőket használnád:
./mappa/mappa2
...ahol . az aktuális könyvtárat jelöli, amelyben éppen tartózkodik. Az aktuális munkakönyvtárat a segítségével módosíthatja a cd parancsot.
Egyetlen időszaktól eltekintve (.), a relatív elérési út kifejezések is használnak dupla pontot (..) a szülőkönyvtárra való hivatkozáshoz.
Vegyük például, hogy benne vagy /www mappa a következő könyvtárszerkezetben:
/var/www/myfolder/folder2
A fent megadott útvonal kifejezésben . fogja jelölni a /www könyvtárat, míg .. rá fog mutatni a /var Könyvtár. Ha van másik könyvtár /random belül /var amelyhez hozzá kell férnie, amíg bent van /var/www, a következőket használnád:
../véletlen
Egyszerű a dolog.
Abszolút vs. Relatív: Melyik útvonal kifejezés a jobb?
Bár az elérési út kifejezések egyszerűnek és jelentéktelennek tűnhetnek Önnek, mint asztali számítógép felhasználójának, számos olyan eset van, amikor a rossz elérési útnév használata sok kéretlen kellemetlenséget okozhat. A webszerverek jó példa erre.
Webfejlesztőként, aki egy Linux-kiszolgálón üzemeltetett projekten dolgozik, hozzá kell férnie a projektkönyvtárban található fájlokhoz. Itt a relatív elérési út kifejezések használata a szabvány, mivel az alkönyvtárnevek vagy a projekt tartománynevének bármilyen változása hibás hivatkozásokhoz vezethet.
Ezt egy egyszerű példán keresztül értheti meg, amelyhez az asztali számítógépek felhasználói jobban kötődhetnek. A / karakter a gyökérkönyvtárat jelöli egy Linux rendszeren. Képzelje el, ha hirtelen változtat ezen, és elkészíti a / karakter mutat a kezdőkönyvtárra. Sok abszolút elérési út kifejezést tartalmazó parancs nem fog működni azóta / most át lett rendelve egy másik könyvtárba.
A relatív elérési út kifejezések használatának másik előnye, hogy mivel az aktuális munkakönyvtárhoz viszonyítva vannak, időt takarít meg, amelyet egyébként a felesleges karakterek begépelésével töltene.
Az egyetlen bökkenő itt a relatív kifejezésekhez kapcsolódó összetettség és tanulási görbe. De ez általános az abszolút elérési út kifejezésekben is; ahhoz, hogy mesterré váljon az abszolút elérési utak használatában, jól ismernie kell a Linux címtárhierarchiáját. Te tudod használni a tree parancsot a teljes Linux könyvtárfa megtekintéséhez és könnyítsd meg magadnak az abszolút útvonal kifejezéseket.
A Linux címtárhierarchia megértése
A Linux címtárszerkezete közös minden Linux alapú operációs rendszert futtató gépen. Használhat egy parancsot, például az ls vagy a tree parancsot, hogy többet megtudjon a fájlok és mappák felépítéséről a számítógépen.