Come posso ottenere l'elenco di tutti i file collegati sul mio sistema o da una determinata directory. Ero solito creare collegamenti ma diventavano ingestibili col tempo. Voglio l'elenco di tutti questi collegamenti da una directory. Qualcuno può aiutare?Come trovare tutti i file che sono fondamentalmente collegamenti soft o hard di altre directory o file su linux?
risposta
Trovare collegamenti simbolici è facile:
% find . -type l
Trovare hard link è difficile, perché se una sottodirectory della directory in questione ha anche sottodirectory poi quelli aumentare il numero di hard link. Ecco come le sottodirectory sono collegate ai loro genitori in UNIX (è la voce ..
in ciascuna sottodirectory).
Se si desidera solo trovare legata file (e non directory), questo funzionerà:
% find . -type f \! -links 1
Questo funziona perché un file che fa avere collegamenti reali avrà un link conteggio> 1 , e il file non collegato ha un conteggio dei collegamenti == 1, quindi questo comando si presenta per tutti i file il cui collegamento conteggio <> 1
in alternativa, sulle versioni più recenti di find
si può usare:
% find . -type f -links +1
Questo funziona per lo stesso motivo di cui sopra; tuttavia, le versioni più recenti di find possono prendere + n o -n anziché solo un numero. Questo è equivalente al test per maggiori di n o meno di n, rispettivamente.
Wao, era un comando così piccolo. Grazie Alnitak – DKSRathore
Er ... un file può contenere <1 link? Voglio dire, non lo renderebbe un inode senza file? – naught101
@ naught101 bene, fornendo -1 non riuscirebbe a trovare alcun file. – Alnitak
@OP, Se avete GNU trovare, si possono trovare hard link utilizzando -printf "%n"
, esempio
find /path -type f -printf "%f/%n/%i\n" | while IFS="/" read filename num_hlinks inum
do
echo "Filename: $filename. Number of hard links: $num_hlinks, inode: $inum"
# if 2 or more files have the same inode number, then they are hard links.
# you can therefore count how many $inum that are the same and determine those hard links, which
# you have to try doing yourself.
done
find/-xdev -samefile filename
Vedi esempio qui https://www.gnu.org/software/findutils/manual/html_node/find_html/Hard-Links.html oppure combinare la risposta di Alnitak e amber_linux a find -L /where/to/search -samefile /some/link/to/file
per trovare tutti i collegamenti hard e soft a un determinato file.
Grazie mille! Questo era esattamente quello che stavo cercando - come trovare quali altri file sono in effetti lo stesso file di quello che sto guardando. – cb2
- 1. Cosa significa "soft/hard nofile" su Linux
- 2. Come eliminare tutti i file che sono stati recentemente creati in una directory in linux?
- 3. ./fastboot: nessun file o directory
- 4. LINUX: link di tutti i file da uno all'altro directory
- 5. Come trovare i file esclusi i collegamenti simbolici?
- 6. chdir() - nessun file o directory
- 7. errore di compilazione: linux/module.h: Nessun file o directory
- 8. WatchService/Deletions/File o Directory?
- 9. Come trovare tutti i file con una particolare directory principale in linux?
- 10. Come trovare mount/partition è attiva una directory o un file? (Server Linux)
- 11. linux bash - rimuove tutti i file che si trovano in una directory da un'altra directory
- 12. Python.h: nessun file o directory
- 13. Percorsi hard-coding in Linux
- 14. errore fatale: vector: nessun file o directory
- 15. trovare tutti i file nella directory con lo spago o un pattern in nome del file con PHP
- 16. Come trovo tutti i file che sono stati creati oggi in Unix/Linux?
- 17. "Nessun file o directory" che tenta di eseguire binario linux sul dispositivo Android
- 18. curl.h. Nessun file o directory
- 19. Mono.AndroidTools.AdbException: Nessun file o directory
- 20. Errore di segmentazione: "... nessun file o directory"
- 21. writeFile nessun file o directory
- 22. Config.h - Nessun file o directory
- 23. Groovy (File IO): trovare tutti i file e restituire tutti i file - il modo Groovy
- 24. come esaminare C++ .o file sotto linux?
- 25. Trova tutti i file in una directory che non sono directory stesse
- 26. Come posso allegare un file VHDx o VHD in Linux?
- 27. Come rendere tutti i file sotto una directory leggibile su linux?
- 28. Come creare una copia di una directory su Linux con i collegamenti
- 29. Come trovare tutti i file nella directory corrente con nomi di file che corrispondono a un determinato pattern in python?
- 30. Installazione di nloptr su Linux - errore irreversibile: nlopt.h: nessun file o directory
Penso che questo appartiene al server default –
Che cos'è serverfault? – DKSRathore
prova qui: serverfault.com –