2013-12-18, 16:59
  #1
Medlem
Hermacets avatar
Jag håller på och läser om symboliska länkar som en del av att lära mig hantera Shell lite bättre i Linux. Jag har lite svårt att förstå mig på symboliska länkar.

Använder man en symbolisk länk för att nå en fil, igenom en länk? Exempelvis om jag vill nå den senaste konfigurationsfilen x_3.2.5-X64.conf så kan jag nå den igenom x_filname.conf som forwardar förfrågan eller skickar infon igenom den till målfilen?
Citera
2013-12-18, 17:15
  #2
Medlem
TorrentLovers avatar
Citat:
Ursprungligen postat av Hermacet
Jag håller på och läser om symboliska länkar som en del av att lära mig hantera Shell lite bättre i Linux. Jag har lite svårt att förstå mig på symboliska länkar.

Använder man en symbolisk länk för att nå en fil, igenom en länk? Exempelvis om jag vill nå den senaste konfigurationsfilen x_3.2.5-X64.conf så kan jag nå den igenom x_filname.conf som forwardar förfrågan eller skickar infon igenom den till målfilen?
Ja, du har uppfatta det hela någorlunda rätt.
Hur exakt det fungerar kan du läsa om här:
https://en.wikipedia.org/wiki/Symbol...symbolic_links
Citera
2013-12-21, 08:28
  #3
Medlem
Citat:
Ursprungligen postat av Hermacet
Använder man en symbolisk länk för att nå en fil, igenom en länk? Exempelvis om jag vill nå den senaste konfigurationsfilen x_3.2.5-X64.conf så kan jag nå den igenom x_filname.conf som forwardar förfrågan eller skickar infon igenom den till målfilen?

Japp. En symbolisk länk är en specialtyp av fil som bara innehåller en sökväg (till en device, fil, mapp, pipe eller vad som helst), t.ex. "/home/patrik" eller "../snake.png". Ett program som öppnar länkfilen på det vanliga sättet kommer egentligen att öppna innehållet i filen/mappen/osv som länken pekar på. Operativsystemet sköter det automatiskt och programmet behöver inte ens veta att det sker.

Men om ett program verkligen vill veta om en fil är en symbolisk länk, och inte automatiskt följa den, kan det göra det också. Med switchar till `cp`, `find`, `ls`, `mv` osv väljer man om man vill göra nåt (kopiera, lista osv) med själva länkfilen eller med målet.

Man kan skapa symboliska länkar med vilken sökväg som helst, målet behöver inte existera, eller så kan man radera målet efter länkandet. Båda leder till en "bruten länk", dvs en symbolisk länk som inte funkar.

Kod:
$ ln -s /finns/inte test
$ cat test
cat: test: No such file or directory
Citera
2013-12-21, 15:33
  #4
Medlem
gotos avatar
Ett väldigt bra användningsområde för symlinks är att peka på configfiler som sparas in nån synctjänst, typ Dropbox.
Citera
2013-12-21, 15:54
  #5
Medlem
TorrentLovers avatar
Citat:
Ursprungligen postat av goto
Ett väldigt bra användningsområde för symlinks är att peka på configfiler som sparas in nån synctjänst, typ Dropbox.
Man får dock komma ihåg att spara alla ln-kommandon i ett skript, så du enkelt kan återskapa dem på en ny maskin.
Citera

Skapa ett konto eller logga in för att kommentera

Du måste vara medlem för att kunna kommentera

Skapa ett konto

Det är enkelt att registrera ett nytt konto

Bli medlem

Logga in

Har du redan ett konto? Logga in här

Logga in