Qual è la differenza tra alias e link?


Risposte:


26

Un alias contiene due informazioni: un identificatore univoco del file a cui si collega e il percorso e il nome del file a cui si collega.

Se si rinomina o si sposta un file e quindi si crea un nuovo file con il percorso e il nome file che il file aveva originariamente, allora qualsiasi alias collegato al file originale ora si collega al nuovo file.

Tuttavia, se si rinomina o si sposta un file senza sostituirlo e quindi si richiama un alias, l'alias viene aggiornato in modo da puntare al nuovo percorso e al nome del file, facendo uso dell'identificatore univoco per farlo.

Un collegamento simbolico, d'altra parte, non contiene un identificatore univoco a un file e apparirebbe interrotto se il file viene rinominato o spostato e non sostituito con un file con lo stesso percorso e nome file.

La tua scelta dovrebbe dipendere dallo scenario più adatto a te.


11
Un'altra differenza è che gli strumenti da riga di comando (ovvero tutto ciò che utilizza le API dei file Posix) non capiranno gli alias, ma solo i collegamenti simbolici. Entrambi funzioneranno per le applicazioni della GUI.
Gordon Davisson,

Mentre pubblico in questo post ( apple.stackexchange.com/questions/2992/… ), ho scoperto che l'azione dell'automatore non funziona con il link, ma con alias.
prosseek

@sentinal dovresti aggiungere anche gli hard link
user151019

1
In particolare, Spotlight non indicizzerà un collegamento simbolico. Indicizzerà un alias (anche se in una posizione più bassa).
Ocodo

2

Sono abbastanza confuso dalla risposta della sentinella create a new file with the path and filename that the file originally had. Inoltre è brusco, perché vuoi farlo?

Bene, se capisci perché e come funziona l'alias usando l'UID e il percorso del file (mentre symlink funziona solo sul percorso), allora puoi capire più facilmente la differenza e la risposta molto votata.

Sui file system HFS e HFS +, ogni file e cartella ha un identificatore univoco e persistente. Gli alias utilizzano questa identità insieme alle informazioni sul percorso per trovare file e cartelle sullo stesso volume.

A partire da Mac OS X 10.2, gli alias hanno invertito questo ordine di ricerca utilizzando prima il percorso e l'identità univoca. Ciò significa che se si sposta un file e lo si sostituisce con un file identico, gli alias del file originale ora puntano al nuovo file. Allo stesso modo, se si sposta un file sullo stesso volume (senza sostituirlo), gli alias utilizzano le informazioni di identità univoche per individuare il file.

Quando si sposta un file o una cartella, l'alias può aggiornare le informazioni sul percorso o le informazioni di identità univoche per tenere conto della modifica. Se un file si sposta da qualche parte sullo stesso volume, l'alias aggiorna il suo record interno con le nuove informazioni sul percorso per il file. Allo stesso modo, se il file originale viene sostituito da un file con lo stesso nome, ma con un'identità univoca diversa, l'alias aggiorna il suo record interno con l'identità univoca del nuovo file. (risultato di create a new file with the path and filename that the file originally had)

Poiché gli alias utilizzano inizialmente un percorso del file system per risolvere un percorso di file, ora offrono un comportamento simile ai collegamenti simbolici. I collegamenti simbolici si basano esclusivamente sulle informazioni sul percorso per individuare un file. Se si sposta un file da qualche parte sullo stesso volume senza sostituirlo, i collegamenti simbolici al file si interrompono mentre gli alias no. L'unico modo per correggere un collegamento simbolico è eliminarlo e crearne uno nuovo.

riferimento


1
Questo sembra essere un commento su una risposta e non un tentativo di rispondere alla domanda del PO. Puoi spiegare come il tuo post risponde alla domanda originale? Vedi Come rispondere per indicazioni su come scrivere buone risposte. - Dalla recensione
fsb

Ho risposto alla domanda di OP spiegando come funziona la ricerca su alias su Mac, ovvero come viene utilizzato il percorso del file e l'UID in una ricerca. La risposta molto votata ha risposto alla differenza ma non ha risposto al motivo per cui la differenza viene generata.
Izana,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.