GNU/Linux >> Tutoriels Linux >  >> Linux

Comment puis-je trouver tous les fichiers liés en dur sur un système de fichiers ?

Vous pouvez exécuter la commande suivante :

find / -type f -printf '%n %p\n' | awk '$1 > 1{$1="";print}'

pour trouver tous les fichiers liés en dur.

Ou version @mbafford :

find / -type f -links +1 -printf '%i %n %p\n'

find . -type f -links +1 2>/dev/null

donne une liste de tous les fichiers qui ont plus d'un lien, c'est-à-dire les fichiers vers lesquels il existe un lien physique. Boucler dessus est alors relativement facile - une solution hacky si vous n'avez pas autant de fichiers serait

for i in $(find . -type f -links +1 2>/dev/null); do find -samefile $i | awk '{printf "%s ", $1}'; printf "\n"; done | sort | uniq

Mais j'espère sincèrement qu'il existe de meilleures solutions, par exemple en laissant le premier find appelez les numéros d'inode d'impression, puis utilisez find est -inum option pour afficher tous les fichiers associés à cet inode.


Linux
  1. Comment lister récursivement tous les fichiers et répertoires

  2. Comment trouver tous les fichiers se terminant par .rb avec Linux ?

  3. Comment puis-je rechercher de manière récursive tous les fichiers dans les dossiers actuels et les sous-dossiers en fonction de la correspondance générique ?

  4. Comment compresser tous les fichiers dans tous les sous-répertoires de bash

  5. Comment puis-je trouver tous les fichiers contenant du texte spécifique sous Linux ?

Comment trouver des fichiers sous Linux

Comment trouver tous les fichiers liés à un logiciel ?

Comment trouver tous les fichiers appartenant à un utilisateur spécifique sous Unix/Linux ?

Comment trouver des fichiers dans Debian

Comment trouver tous les fichiers de zéro octet dans le répertoire

Comment puis-je supprimer de manière récursive tous les fichiers et répertoires vides sous Linux ?