În primul rând, o definiție rapidă a termenilor. Există trei tipuri de „symlink-uri” pe Windows.

  • soft links (numite și symlink-uri, sau legături simbolice)
  • hard links
  • junctions (un tip de soft link doar pentru directoare)

Link-urile soft pot fi create pentru fișiere sau directoare.

Hard links pot fi create doar pentru fișiere.

Atât legăturile soft cât și cele hard trebuie să fie create pe același volum ca și ținta. de exemplu, nu puteți lega ceva de pe C: la ceva de pe D:.

Ștergerea legăturilor

Acesta este punctul în care diferența dintre legăturile soft și hard este cea mai evidentă.

Ștergerea țintei va face ca legăturile soft să nu mai funcționeze. Ceea ce indică a dispărut. Cu toate acestea, legăturile hard vor continua să funcționeze până când veți șterge însăși legătura hard. Legătura dură se comportă exact ca și fișierul original, pentru că, din toate punctele de vedere, este fișierul original.

Joncțiuni

Windows are, de asemenea, un alt tip de legătură doar pentru directoare, numit Junctions.

Junctions arată și acționează ca și legăturile soft. Diferența esențială este că ele vă permit să legați directoare care se află pe volume locale diferite (dar tot pe același calculator). Nu puteți crea o joncțiune către o locație de rețea.

Utilizarea MKLINK

Crearea unei legături soft către un director.

Crearea unei legături de joncțiune către un director.

Crearea unei legături soft către un fișier.

Creează o legătură hard link către un fișier.

Cum arată.

Nota pentru utilizatorii PowerShell:
MKLINK nu este un executabil pe care îl puteți apela pur și simplu din PowerShell. Trebuie să îl apelați prin intermediul promptului de comandă.

cmd /c mklink /D symlink_dir real_dir

Alternativ, puteți utiliza acest modul pe care l-am scris și care are învelișuri PowerShell native pentru MKLINK.

Citește despre MSLINK pe MSDN.

Utilizarea FSUTIL

FSUTIL este o altă modalitate de a crea legături dure (dar nu și legături soft). Acesta este același lucru ca și mklink /H.

Citește despre FSUTIL pe MSDN.

Utilizarea Junction

Junction este un instrument furnizat de Sysinternals și oferă o altă modalitate de a crea joncțiuni. Același lucru ca și mklink /J. De asemenea, are și alte instrumente pentru lucrul cu joncțiunile pe care nu le voi acoperi aici.

.