GNU/Linux >> Tutoriels Linux >  >> Linux

Comment trouver un fichier sous Linux dans tous les répertoires de manière récursive

Comment trouver un fichier dans les sous-répertoires Linux - rechercher un fichier de manière récursive sous Linux. Voici la commande Unix pour trouver un fichier dans un répertoire et un sous-répertoire.

Qu'est-ce que la liste récursive d'un répertoire ?

Récursif signifie que si un répertoire contient des sous-répertoires et des fichiers, la commande sera également exécutée et appliquée à ces fichiers (de manière récursive).

La façon la plus simple de voir la liste des fichiers et des sous-répertoires dans un répertoire spécifique consiste à utiliser la commande tree.

Tree est un programme de liste de répertoires récursif qui produit une liste de fichiers indentée en profondeur. Sans argument, tree liste les fichiers du répertoire courant. Lorsque des arguments de répertoire sont donnés, tree répertorie tous les fichiers et/ou répertoires trouvés dans les répertoires donnés, chacun à son tour. À la fin de la liste de tous les fichiers/répertoires trouvés, l'arborescence renvoie le nombre total de fichiers et/ou de répertoires répertoriés.

commande arborescente

Voici un moyen plus simple d'effectuer la recherche récursive avec la commande tree :

tree -a

Lorsque -a est utilisé avec la commande tree, tous les fichiers sont imprimés. Par défaut, l'arborescence n'imprime pas les fichiers cachés (ceux commençant par un point .'). De plus, l'arborescence n'imprime en aucun cas les constructions du système de fichiers.' (répertoire actuel) et '..' (répertoire précédent).

Combinez "trouver" et "grep"

Vous pouvez également utiliser une combinaison de deux commandes sous Linux - find et grep commandes pour rechercher récursivement dans les sous-répertoires les fichiers correspondant à un grep pattern (fourni avec l'argument):

find . -type f -exec grep -l 'directory_name' {} ;

Cette commande rend la tâche très simple. Il recherche tous les fichiers dans tous les sous-répertoires du répertoire courant et imprime les noms de fichiers. C'est un excellent ensemble de commandes pour rechercher de manière récursive des fichiers dans tous les sous-répertoires.

Autres commandes pour rechercher des fichiers de manière récursive

Il existe de nombreuses autres commandes pour rechercher des fichiers de manière récursive. Les utilisateurs de Linux Ubuntu peuvent utiliser l'une des commandes suivantes :

  1. ls -R  :Utilisez la commande ls pour obtenir une liste récursive de répertoires sur les systèmes Linux
  2. trouver /dir/ -print  :Utilisez la commande find pour voir la liste récursive des répertoires dans les systèmes Unix
  3. du -a .  :Utilisez la commande du pour afficher la liste récursive des répertoires sur les systèmes Unix

Article d'origine


Linux
  1. Comment rechercher tous les fichiers avec une taille de fichier de zéro (0) octet dans un répertoire de manière récursive

  2. Comment lister récursivement tous les fichiers et répertoires

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

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

  5. Comment lister tous les fichiers d'une partition sous Linux ?

Comment déplacer des fichiers et des répertoires sous Linux (commande mv)

Comment compter les fichiers dans le répertoire sous Linux

Comment trouver des fichiers basés sur l'horodatage sous Linux

Comment trouver des fichiers modifiés au cours des dernières 24 heures sous Linux

Comment lister les fichiers de manière récursive sous Linux

Comment copier des fichiers et des répertoires dans un terminal Linux