Læsere som dig hjælper med at støtte MUO. Når du foretager et køb ved hjælp af links på vores websted, kan vi optjene en affiliate-kommission.

Absolutte og relative stinavne er to måder at angive den virtuelle adresse på en mappe eller fil på Linux. Men hvad er forskellen mellem disse to stityper, og hvilken skal du bruge i dine kommandoer? Lad os finde ud af det.

Relative og absolutte stier i Linux

Hvis du nogensinde har brugt en argumentbaseret Linux-kommando som cd eller ls, ville du vide, at der er flere måder at angive stien til en mappe eller fil på.

Du foretrækker måske enten at holde dig til normale stiudtryk eller, hvis du er en avanceret Linux-bruger, anvende komplekse regulære udtryk til at videregive et fil- eller biblioteksnavn til et program. Uanset hvad, er der kun to måder at angive en mappesti på Linux: absolut sti og relativ sti.

Absolutte vejudtryk

En absolut sti starter altid fra rodmappen og slutter ved den faktiske mappe eller fil, du vil pege på. Mens du bruger absolut sti-udtryk, skal du skrive alle underbiblioteksnavne, der findes i hierarkiet, der fører op til den endelige placering.

instagram viewer

Hvis du f.eks. vil pege på /myfolder/folder2 inde i /var/www mappe ved hjælp af absolut sti-udtryk, ville du bruge:

/var/www/myfolder/folder2

...hvor er / i begyndelsen af ​​udtrykket henviser til rodmappen på Linux.

Relative vejudtryk

Relativ sti henviser på den anden side til et stiudtryk, der bruger en anden sti (normalt den nuværende arbejdsmappe) som sin rod eller base. Som navnet antyder, er det "relativt" til en eksisterende sti på dit system.

For eksempel, hvis du i øjeblikket er inde i /var/www mappe og skal pege på /myfolder/folder2, ville du bruge:

./minmappe/mappe2

...hvor . angiver den aktuelle mappe, du er i. Du kan ændre den nuværende arbejdsmappe vha cd kommandoen.

Bortset fra en enkelt periode (.), bruger relative stiudtryk også dobbelte perioder (..) for at henvise til det overordnede bibliotek.

For eksempel overveje, at du er inde i /www mappe inde i følgende mappestruktur:

/var/www/myfolder/folder2

I det ovenfor nævnte stiudtryk, . vil betegne /www bibliotek mens .. vil pege på /var vejviser. Hvis der er en anden mappe /random inde /var som du skal have adgang til, mens du er inde /var/www, ville du bruge:

../tilfældig

Så simpelt er det.

Absolut vs. Pårørende: Hvilket vejudtryk er bedre?

Selvom stiudtryk kan virke enkle og ligegyldige for dig som desktopbruger, er der forskellige tilfælde, hvor brug af det forkerte stinavn kan resultere i mange uopfordrede gener. Webservere er et godt eksempel.

Som webudvikler, der arbejder på et projekt, der er hostet på en Linux-server, skal du have adgang til filer inde i projektmappen. Her er brug af relative sti-udtryk standarden, da enhver ændring i undermappenavnene eller projektets domænenavn kan føre til ødelagte links.

Du kan forstå dette med et simpelt eksempel, som desktopbrugere måske kan relatere til bedre. Det / tegn angiver rodmappen på et Linux-system. Tænk, hvis du pludselig ændrer det og laver / tegn peger på hjemmebiblioteket. Mange af dine kommandoer, der indeholder absolutte stiudtryk, vil ikke fungere siden / er nu blevet omfordelt til en anden mappe.

En anden fordel ved at bruge relative stiudtryk er, at da de er i forhold til den aktuelle arbejdsmappe, sparer det dig tid, som du ellers ville bruge på at skrive unødvendige tegn.

Den eneste fangst her er kompleksiteten og indlæringskurven forbundet med relative udtryk. Men det er også almindeligt i absolutte vejudtryk; for at blive en mester i at bruge absolutte stier, skal du være velbevandret med Linux-kataloghierarkiet. Du kan bruge trækommandoen for at se hele Linux-mappetræet og gør absolutte vejudtryk nemmere for dig selv.

Forstå Linux-kataloghierarkiet

Linux-biblioteksstrukturen er fælles for alle maskiner, der kører operativsystemer baseret på Linux. Du kan bruge en kommando som ls eller træ til at lære mere om, hvordan filerne og mapperne er struktureret på din computer.