Gestion de fichiers

Est-ce que répertorier uniquement les répertoires de manière récursive sous Linux?

Est-ce que répertorier uniquement les répertoires de manière récursive sous Linux?

Le mot "récursif" fait référence au fait qu'une commande du système d'exploitation Linux ou Unix traite le contenu des dossiers, et si un dossier a des sous-dossiers et des documents, l'instruction fonctionne toujours avec tous ces documents (récursivement). Il est possible que le répertoire enfant ait son propre ensemble de fichiers et de dossiers (par exemple, des dossiers volumineux), ainsi de suite. Vous utiliserez différentes instructions Linux pour parcourir de manière récursive chaque dossier avant de vous rendre au bord du dossier spécifié. À ce niveau, les instructions Linux retournent à un arrêt de l'arborescence et répètent le processus pour tous les sous-dossiers existants. Dans ce tutoriel, vous apprendrez toutes les méthodes pour lister les répertoires de manière récursive.

Exemples de répertoires à liste simple

Tout d'abord, vous devez savoir comment lister tous les répertoires de votre système Linux à l'aide de la simple commande list. Ouvrez le terminal de ligne de commande et essayez la commande "ls'" ci-dessous pour répertorier uniquement les répertoires. Il ne répertoriera pas seulement les répertoires, mais le nombre total de sous-dossiers et de fichiers qui y résident. La sortie affiche les dossiers avec les informations concernant leur propriétaire, leur groupe, leurs privilèges de lecture-écriture et la date de création des dossiers.

$ ls -l

Pour lister tous les répertoires et fichiers de votre système Linux, vous devez utiliser "-la" au lieu du simple "-l" dans la commande list. Par conséquent, exécutez la commande mise à jour pour le faire. La sortie affiche tous les fichiers et dossiers ainsi que leurs informations supplémentaires.

$ ls -la

Pour simplement lister les répertoires sans informations supplémentaires, essayez la commande ci-dessous suivie du drapeau "-d".

$ ls -d */

Vous pouvez également utiliser la même commande avec peu de modifications pour répertorier les dossiers avec leurs informations supplémentaires. Il vous suffit d'ajouter le drapeau "-l" dans cette commande comme suit :

$ ls -l -d */

Pour vérifier uniquement le nombre total de fichiers dans le répertoire personnel spécifique, essayez la commande présentée ci-dessous dans le shell. Vous obtiendrez le nombre total de fichiers dans votre système d'exploitation Linux.

$ ls -l | egrep -v '^d'

Exemple de liste de répertoires de manière récursive

Il existe différents types de commandes récursives disponibles dans les systèmes Linux, qui peuvent être utilisées pour répertorier les répertoires de manière récursive. Pour comprendre chacun d'eux séparément, supposons que vous ayez 5 fichiers dans votre répertoire Linux nommés "Documents".

Lister de manière récursive en utilisant le drapeau "-lR"

Utiliser le drapeau "-lR" dans votre requête pour lister de manière récursive tous les répertoires de votre système Linux est la première méthode pour le faire. Lors de l'exécution de la commande list ci-dessous, il répertoriera tous les dossiers et leurs sous-dossiers ainsi que leurs détails de bonus, comme indiqué dans la sortie.

$ ls -lR

Laissez-nous simplement lister de manière récursive tous les fichiers ou dossiers d'un dossier ou d'un répertoire spécifique de votre système Linux. Pour cela, ajoutez le chemin de l'emplacement du répertoire spécifique pour le répertorier de manière récursive. Nous voulons répertorier de manière récursive tous les fichiers et dossiers du répertoire "Documents" résidant dans le répertoire "home" à l'aide de la commande ci-dessous mise à jour. La sortie affiche tous les fichiers et dossiers du dossier « Documents » ainsi que ses informations supplémentaires.

$ ls -lR /home/aqsayasin/Documents/

Liste récursive à l'aide de la commande « Rechercher »

Dites-vous clairement que tous les systèmes Linux, e.g., macOS, système d'exploitation de type Unix, a le choix d'utiliser "-R" pour lister les répertoires. Dans ce cas, il existe d'autres commandes disponibles pour répondre à nos besoins, à savoir les commandes « rechercher » et « imprimer ». Dans cette commande, nous allons donner un chemin vers un dossier avec l'effet de levier de l'utilisation de la commande "-ls". Lorsque "-ls" est utilisé dans la commande, cela signifie qu'il affichera également les informations supplémentaires concernant les fichiers et dossiers résidants d'un répertoire spécifique. Essayez la commande ci-dessous dans le shell pour répertorier de manière récursive tous les fichiers et dossiers du répertoire « Documents ».

$ find /home/aqsayasin/Documents/ -print -ls

Maintenant, vous devez essayer la même instruction dans le shell avec un petit changement. Nous éviterons d'utiliser le drapeau "-ls" dans cette commande pour ne plus afficher les informations supplémentaires concernant les fichiers. Exécutez la requête ci-dessous dans le shell, et vous aurez la sortie affichée.

$ find /home/aqsayasin/Documents/ -print

Lister de manière récursive à l'aide de la commande "-du"

Regardons un autre exemple pour lister récursivement les fichiers ou répertoires avec une autre nouvelle méthode. Cette fois, nous utiliserons la commande "-du" pour accomplir notre objectif. Cette commande contient l'indicateur "-a". En plus des drapeaux, nous devons également spécifier l'emplacement du répertoire. Exécutons l'instruction ci-dessous dans le shell du terminal pour répertorier de manière récursive tous les dossiers ou fichiers du répertoire "Documents". La sortie affiche les 5 enregistrements correspondants, comme indiqué ci-dessous. Vous pouvez voir que cette commande affiche également le nombre de piqûres résidant dans chaque fichier.

$ du -a /home/aqsayasin/Documents/

Lister de manière récursive à l'aide de la commande "tree"

Dernier point mais non le moindre, nous avons une méthode de commande « arborescente » très simple et facile à utiliser pour répertorier de manière récursive les fichiers ou dossiers. Nous n'utiliserons aucun indicateur dans cette commande jusqu'à présent. Vous devez spécifier l'emplacement du répertoire avec le mot-clé « arbre ». Ayons-en un exemple en utilisant la commande ci-dessous. La sortie montre la sortie de type ramifié « arbre » du répertoire « Documents ». Il montre 0 répertoires et 5 fichiers dans la sortie.

$ tree /home/aqsayasin/Documents/

Essayons la même commande "arbre" avec un emplacement différent. Cette fois, nous listons récursivement les dossiers du répertoire 'Home' de l'utilisateur "aqsayasin". La sortie montre les branches du dossier « Accueil » ayant un total de 14 dossiers différents, sous-dossiers et 5 fichiers.

$ arbre /home/aqsayasin/

Conclusion

Nous avons essayé toutes les méthodes récursives pour répertorier de manière récursive les répertoires et fichiers, e.g., Indicateur "-lR", rechercher et imprimer, du et commande d'arborescence

Comment télécharger et jouer à Civilization VI de Sid Meier sur Linux
Présentation du jeu Civilization 6 est une version moderne du concept classique introduit dans la série de jeux Age of Empires. L'idée était assez sim...
Comment installer et jouer à Doom sur Linux
Introduction à Doom La série Doom est née dans les années 90 après la sortie du Doom original. Ce fut un succès instantané et à partir de ce moment-là...
Vulkan pour les utilisateurs Linux
Avec chaque nouvelle génération de cartes graphiques, nous voyons les développeurs de jeux repousser les limites de la fidélité graphique et se rappro...