Un collegamento in Linux è un file speciale che fa riferimento a un altro file o directory. In questo modo, un file può essere collocato in più posti contemporaneamente. Quando il file originale viene cancellato, il collegamento viene mantenuto. Questo può causare crash e in generale intasare il sistema.
Per cominciare, spieghiamo il metodo per verificare che il file sia effettivamente un collegamento. Per farlo è sufficiente utilizzare l'utility ls. Dopodiché, esaminiamo tre metodi di rimozione, ognuno con le sue peculiarità.
Con l'aiuto di ls è comodo vedere le informazioni sul file. Per utilizzare l'utility, occorre dare l'opzione -l e specificare il percorso. A titolo di esempio, prendiamo il file ~/symlinks/link_1:
$ ls -l ~/symlinks/link_1

È possibile verificare la presenza di collegamenti in un intero catalogo:
$ ls -l ~/symlin

Un file non necessario è contrassegnato da una freccia caratteristica dopo il suo nome.
Il comando rm può essere usato per cancellare qualsiasi file nel file system di Linux, compresi i collegamenti. È quindi adatto al nostro compito. È importante ricordare che l'eliminazione del collegamento non influisce sul file o sulla directory originale.
Eseguire il comando nel terminale:
$ rm ~/symlinks/link_1

Inoltre, per ottenere informazioni dettagliate sulla procedura, aggiungere l'opzione -v al comando:
$ rm -v ~/symlinks/link_1

Inoltre, è possibile verificare se il collegamento è scomparso dalla directory. A tale scopo, utilizzare il comando ls descritto in precedenza.

Ora sapete come rimuovere un collegamento simbolico in Linux.
L'utilità unlink è progettata per rimuovere i file dal file system di Linux. È sufficiente specificare il percorso del collegamento:
$ unlink ~/symlinks/link_1

Nell'ambito dell'operazione in questione, rm e unlink funzionano in modo quasi identico. Passiamo ora all'ultimo metodo.
Con l'aiuto del comando find è possibile cercare ed eliminare i collegamenti in una determinata directory. Ciò significa che non è necessario utilizzare anche ls.

A differenza delle due opzioni precedenti, ha caratteristiche piuttosto avanzate, come ad esempio l'impostazione dei criteri di ricerca. Ma anche la sintassi non è così semplice.
Per effettuare una ricerca, è necessario specificare una directory e alcuni parametri:
$ find ~/symlinks/ -type l -print

Il parametro -type l è necessario per selezionare solo i collegamenti simbolici, -print per visualizzare il nome completo. Con l'aiuto di -maxdepth è possibile specificare la profondità della ricerca per directory annidate. Se si specifica 1, la ricerca verrà eseguita solo sulla directory stessa, senza allegati:
$ find ~/symlinks/ -maxdepth 1 -type l -print

Se nella directory sono presenti molti collegamenti, è possibile specificare un modello di ricerca per il comando find. A titolo di esempio, prendiamo una situazione in cui vogliamo trovare solo i collegamenti nascosti con una data di ultima modifica non superiore a 30 giorni fa:
$ find ~/data/ -type l -name ".*" -mtime -30 -print

Sono stati aggiunti due criteri:
-nome - ricerca per nome.-mtime - in base all'ora di modifica.Tutti i collegamenti trovati possono essere eliminati secondo lo schema specificato. A questo scopo -print è sostituito da -delete:
$ find ~/data/ -type l -name ".*" -mtime -30 -delete

Alla fine dell'istruzione ci occupiamo della ricerca e dell'eliminazione dei collegamenti interrotti che non portano da nessuna parte, ad esempio dopo aver cancellato il file o la directory originale. Il parametro -xtype l è adatto a questo scopo. -print non è richiesto per l'output:
$ find ~/broken_links/ -xtype l

Di conseguenza, tutti i collegamenti interrotti saranno visualizzati nel terminale. Per rimuoverli, aggiungere -delete alla fine del comando:
$ find ~/broken_links/ -xtype l -delete

Questo completa le istruzioni per eliminare un collegamento in Linux.