GNU/Linux >> Linux Esercitazione >  >> Linux

C'è un modo per verificare se ci sono collegamenti simbolici che puntano a una directory?

Non esiste davvero alcun modo diretto per verificare la presenza di tali collegamenti simbolici. Considera che potresti avere un filesystem che non è sempre montato (ad es. un'unità USB esterna), che potrebbe contenere collegamenti simbolici a un altro volume sul sistema.

Potresti fare qualcosa con:

for a in `find / -type l`; do echo "$a -> `readlink $a`"; done | grep destfolder

Noto che find di FreeBSD non supporta il -lname opzione, motivo per cui ho finito con quanto sopra.


Userei il comando find.

find . -lname /particular/folder

Ciò cercherà ricorsivamente nella directory corrente i collegamenti simbolici a /particular/folder . Si noti che troverà solo collegamenti simbolici assoluti. Un comando simile può essere utilizzato per cercare tutti i collegamenti simbolici che puntano a oggetti chiamati "cartella":

find . -lname '*folder'

Da lì dovresti eliminare tutti i falsi positivi.


find . -type l -printf '%p -> %l\n'

Puoi controllare i collegamenti simbolici con il symlinks programma scritto da Mark Lord:eseguirà la scansione di un intero filesystem, normalizzerà i percorsi dei collegamenti simbolici in forma assoluta e li stamperà su stdout.


Linux
  1. Controlla se una directory è vuota usando C su Linux

  2. Verifica che ci siano almeno due argomenti forniti in uno script bash

  3. Esiste un modo per verificare quali baud rate sono supportati su un dispositivo seriale?

  4. Come creare collegamenti simbolici a tutti i file (classe di file) in una directory?

  5. Come scollegare tutti i collegamenti simbolici sotto la directory?

Trova ed elimina il file più vecchio se ci sono più di X file in una directory in Linux

Un modo semplice per elencare i collegamenti simbolici in Linux

Ci sono degli svantaggi nell'usare Mount-bind come sostituto dei collegamenti simbolici?

DHCP:un modo per controllare lo stato del pool DHCP?

Come trovare collegamenti simbolici interrotti in Linux

rsync e collegamenti simbolici