Ce face os.link()
După link(a, b), a și b sunt două nume egale pentru același conținut de pe disc: modificările prin unul se văd prin celălalt, iar fișierul dispare abia când este șters ultimul nume. Legăturile fizice funcționează doar pe același disc și, de obicei, doar pentru fișiere, nu pentru directoare.
Parametri
| Parametru | Descriere |
|---|---|
sursa, destinatie |
Fișierul existent și noul nume. |
Ce returnează
None.
Exemple
Exemplul 1: Două nume, același conținut
import os
with open("original.txt", "w") as f:
f.write("versiunea 1")
os.link("original.txt", "alt_nume.txt")
with open("alt_nume.txt", "w") as f:
f.write("versiunea 2")
with open("original.txt") as f:
print(f.read(), os.stat("original.txt").st_nlink)
os.remove("original.txt")
with open("alt_nume.txt") as f:
print(f.read())
Rezultat
versiunea 2 2
versiunea 2
Greșeli frecvente
- Creezi o legătură fizică spre alt disc și primești
OSError: Invalid cross-device link.
Comenzi înrudite
os.symlink() și os.readlink(): Creează o legătură simbolică și citește destinația ei.Path.symlink_to(), hardlink_to() și readlink(): Creează legături simbolice sau fizice și citește destinația unei legături.os.path.samefile(), sameopenfile() și samestat(): Verifică dacă două căi (sau două fișiere deschise) se referă la același fișier de pe disc.