I link simbolici sono simili agli alias, eccetto che funzionano in ogni applicazione sul tuo Mac, incluso nel terminale. Sono particolarmente utili quando le app non vogliono funzionare correttamente con un alias regolare. Su macOS, si creano collegamenti simbolici nel terminale usando il
ln
utilità. Non puoi crearli nel Finder. I collegamenti simbolici in macOS funzionano in modo simile ai collegamenti simbolici in Linux, perché entrambi sono sistemi operativi di tipo Unix. I collegamenti simbolici in Windows funzionano in modo leggermente diverso.
Quali sono i collegamenti simbolici?
In macOS, puoi creare alias regolari nel Finder. Gli alias puntano a file o cartelle, ma sono più simili a scorciatoie.
Un collegamento simbolico è un tipo di alias più avanzato che funziona in ogni applicazione sul sistema, comprese le utilità della riga di comando nel terminale. Un collegamento simbolico che crei appare per le app come il file o la cartella originale a cui punta, anche se si tratta solo di un collegamento.
Ad esempio, supponiamo tu abbia un programma che ha bisogno dei suoi file memorizzati in / Library / Program. Ma si desidera archiviare questi file da qualche altra parte nel sistema, ad esempio in / Volumi / Programma. È possibile spostare la directory del programma su / Volumi / Programma, quindi creare un collegamento simbolico su / Libreria / Programma che punta a / Volumi / Programma. Il programma proverà ad accedere alla sua cartella in / Library / Program e il sistema operativo lo reindirizzerà a / Volumes / Program.
Questo è completamente trasparente per il sistema operativo macOS e le applicazioni che usi. Se si accede alla directory / Library / Program nel Finder o in qualsiasi altra applicazione, sembrerà che contenga i file all'interno di / Volumes / Program.
Oltre ai collegamenti simbolici, che a volte vengono chiamati "collegamenti", è possibile creare "collegamenti fisici". Un collegamento simbolico o soft punta a un percorso nel file system. Ad esempio, supponiamo di avere un collegamento simbolico o soft da / Users / example che punta a / opt / example. Se sposti il file in / opt / example, il link su / Users / example verrà interrotto. Tuttavia, se si crea un collegamento fisico, in realtà punta al inode sottostante sul file system. Quindi, se hai creato un collegamento fisico da / Users / example che punta a / opt / example e successivamente spostato / opt / example, il link su / Users / example punta ancora al file, indipendentemente da dove lo hai spostato. L'hard link funziona a un livello inferiore.
In generale, dovresti usare link simbolici standard (link), se non sei sicuro di quale usare. Gli hard link hanno alcune limitazioni. Ad esempio, non è possibile creare un collegamento fisico su una partizione o su un disco che punta a una posizione su un'altra partizione o su un disco, mentre è possibile farlo con un collegamento simbolico standard.
Creare collegamenti simbolici con il comando ln
Per creare un collegamento simbolico su un Mac, devi utilizzare l'app Terminale.
Premi Comando + Spazio, digita "Terminale", quindi premi "Invio" per aprire Terminale dalla ricerca Spotlight. Passare a Finder> Applicazioni> Utility> Terminale per avviare il collegamento Terminale.
ln
comando nel seguente modulo È possibile specificare un percorso per una directory o un file:
ln -s /path/to/original /path/to/link
Il
-s
qui dice al comando ln di creare un collegamento simbolico. Se vuoi creare un hard link, omettere il
-s
. Il più delle volte i link simbolici sono la scelta migliore, quindi non creare un hard link a meno che non si abbia una ragione specifica per farlo.
Ecco un esempio. Supponiamo che tu voglia creare un collegamento simbolico nella cartella Desktop che punta alla cartella Download. Dovresti eseguire il seguente comando:
ln -s /Users/name/Downloads /Users/name/Desktop
ln -s '/Users/name/My Files' '/Users/name/Desktop/My Link'
Per semplificare la digitazione di file e percorsi di directory nel Terminale, è possibile trascinare una cartella dalla finestra del Finder nel Terminale e il Terminale compilerà automaticamente il percorso di quella cartella. Se necessario, racchiuderà il percorso tra virgolette.
ln
comando con il
sudo
comando, in questo modo:
sudo ln -s /path/to/original /path/to/link
Tenere presente che, nelle versioni moderne di macOS, non è possibile scrivere su determinati percorsi di sistema senza modificare un'opzione firmware di basso livello a causa della funzionalità di protezione dell'integrità del sistema. Puoi disabilitare questa funzione, ma ti consigliamo di non farlo.
Come eliminare i collegamenti simbolici
È possibile eliminare collegamenti simbolici come qualsiasi altro tipo di file.Ad esempio, per eliminare un collegamento simbolico nel Finder, fai Ctrl + clic o fai clic con il pulsante destro del mouse e seleziona "Sposta nel cestino".
rm
comando, che è lo stesso comando che useresti per rimuovere altri file. Esegui il comando e specifica il percorso del link che desideri eliminare:
rm /path/to/link
Come creare collegamenti simbolici con uno strumento grafico
Il Finder può creare alias, ma non funzionano come i link simbolici. Gli alias sono proprio come scorciatoie desktop su Windows. Non sono trattati come collegamenti simbolici veri e trasparenti.
Per poter creare collegamenti simbolici in Finder, avrai bisogno di un'utilità o di uno script di terze parti. Raccomandiamo l'app open source SymbolicLinker per aggiungere rapidamente un'opzione Servizi> Crea collegamento simbolico direttamente nel menu di scelta rapida del Finder.
Fare clic sull'opzione che aggiunge e creerà un collegamento simbolico al file o alla cartella selezionati nella directory corrente. Puoi rinominarlo e spostarlo dove preferisci.