GNU/Linux >> Tutoriels Linux >  >> Linux

liste/trouve tous les fichiers normaux dans tous les sous-répertoires à l'exception des fichiers binaires

file /usr/bin/file , par exemple, n'inclut pas le mot "binary" dans sa sortie sur mon système. Si file -i est disponible, il inclut le mot "binaire". Sans -i , il peut être plus fiable de tester la présence du mot "texte".

find -type f -exec sh -c "file {} | grep text >/dev/null" \; -print

ou

find -type f -exec sh -c "file {} | grep text >/dev/null" \; -ls

Utilisation de -i :

find -type f -exec sh -c "file -i {} | grep -v binary >/dev/null" \; -print

Utilisation de file ne sera qu'une approximation car il utilise l'heuristique pour déterminer le type de fichier et il n'y a pas de définition précise de ce qui constitue un fichier "binaire". Un fichier vide est-il "binaire" ? file dit que c'est. De plus, il existe de nombreuses façons (normalement peu courantes) de déclencher de faux ID positifs par file .


Une autre méthode consisterait à exclure tous les fichiers pour lesquels l'autorisation d'exécution est définie pour l'utilisateur, le groupe ou d'autres :

find . -type f ! -perm /u=x,g=x,o=x

(Si binaire équivaut à des autorisations d'exécution...)


Linux
  1. Supprimer tous les fichiers d'un répertoire dont le nom ne correspond pas à une ligne dans une liste de fichiers ?

  2. Obtenir la liste de tous les fichiers par masque dans le terminal ?

  3. Répertorier de manière récursive tous les fichiers d'un répertoire, y compris les fichiers des répertoires de liens symboliques

  4. lien symbolique :trouver tous les fichiers liés à ce fichier

  5. Recherche de fichiers lisibles par l'homme sur unix

Retrouver les fichiers perdus avec Scalpel

Trouver tous les fichiers de zéro octet dans le répertoire et les sous-répertoires

Répertorier tous les fichiers d'images graphiques avec rechercher ?

Supprimer les fichiers correspondants dans tous les sous-répertoires

Comment puis-je éditer tous les fichiers renvoyés par find in vi sous Linux ?

Comment lister les fichiers avec des chemins complets sous Linux ?