Rechercher par nom
La commande la plus simple que nous pouvons utiliser pour trouver un fichier est par un nom spécifique dans un répertoire. L'avantage avec cette commande est que bash trouvera le fichier même s'il est présent dans l'un des répertoires récursifs à l'intérieur du chemin de répertoire passé. Regardons un exemple :
trouver le code -nom ifelse4.shCette commande trouvera le fichier ifelse4.sh récursivement dans le répertoire Code. Voyons le résultat de cette commande :
Rechercher un fichier par nom
L'option de nom que nous avons mentionnée ci-dessus est sensible à la casse. Si vous souhaitez rechercher le fichier quelle que soit la casse du nom, utilisez la commande suivante : trouver le code -iname ifelse4.sh
Recherche d'un fichier par expression régulière
Nous pouvons utiliser des expressions régulières simples pour trouver un fichier dans un répertoire qui correspond à cette expression régulière. Démontrons cela avec une commande simple pour trouver tous les fichiers avec n'importe quel nom et avec une extension de .SMS:
trouver Code -regex ".*\.merde"Voici ce que nous obtenons avec cette commande :
Recherche de fichier par regex
Comprenons ce que signifie cette commande ici :
- -regex : cela signifie simplement que nous allons passer une expression régulière ensuite.
- Dans l'expression régulière, le premier point (.) signifie que n'importe quel nombre de caractères dans le nom de fichier doit correspondre.
- Ensuite, avec le *, nous faisons correspondre n'importe quel nombre de répétitions de n'importe quel caractère (en raison du point).
- Enfin, nous faisons correspondre tous les fichiers avec .extension sh.
La bonne chose à propos d'une expression régulière peut être qu'elle peut être rendue aussi flexible que vous pouvez le définir. Modifions l'exemple ci-dessus pour trouver des fichiers avec .sh et .txt aussi :
trouver Code -regex ".*\.sh|\.SMS"Recherche de fichiers modifiés au cours des n dernières minutes
Trouver un fichier qui a été modifié au cours des n dernières minutes est également facile. Voyons tout de suite un exemple :
trouver le code -mmin -90Voyons le résultat de cette commande :
Recherche du fichier modifié au cours des 90 dernières minutes
Recherche de fichiers modifiés au cours des n derniers jours
Trouver un fichier qui a été modifié au cours des n derniers jours est également facile. Voyons tout de suite un exemple :
trouver le code -mtime 0Voici ce que nous obtenons avec cette commande :
Rechercher un fichier par jours
Recherche de fichiers par autorisations
Trouver un fichier avec des autorisations spécifiques est également possible. On peut trouver des fichiers associés à un utilisateur ou à un groupe d'utilisateurs :
trouve . -utilisateur shubhamVoici ce que nous obtenons avec cette commande :
Recherche de fichiers appartenant à un utilisateur
On peut aussi appliquer la même logique pour rechercher des fichiers appartenant à un groupe d'utilisateurs : trouve . -racine du groupe
Recherche de fichiers par taille
Pour trouver des fichiers dont la taille est supérieure à une taille spécifiée, vous pouvez utiliser la commande suivante :
trouver Code -taille +500Voici ce que nous obtenons avec cette commande :
Rechercher un fichier par taille
En dehors des octets, la taille d'un fichier peut être mentionnée comme :
- b : blocs de 512 octets : c'est l'unité par défaut si aucune n'est spécifiée
- c : octets
- k : kilo-octets
- M : mégaoctets
- G : gigaoctets
Recherche de fichiers par type
Il est possible de trouver un fichier avec un type. Nous avons les types suivants pour la commande find :
- d : répertoire
- f : fichier normal
- l : lien symbolique
- b : bloc tamponné
- c : caractère non tamponné
- p : tube nommé
- s : prise
Utilisons une commande pour trouver un fichier normal :
trouve . -tapez fVoici ce que nous obtenons avec cette commande :
Rechercher des fichiers par type
Recherche de fichiers avec plusieurs conditions
Comme dernier exemple, il est possible de trouver des fichiers en ajoutant plusieurs conditions comme nous l'avons vu plus haut. Essayons maintenant plusieurs conditions dans une seule commande find :
trouve . -taille +1c -et -nom "*.merde"Voici ce que nous obtenons avec cette commande :
Rechercher des fichiers avec plusieurs conditions
Conclusion
Dans cette leçon, nous avons vu comment utiliser la commande find pour trouver des fichiers avec un nom ou par autorisations ou par type. Nous pouvons même ajouter plusieurs conditions pour trouver des fichiers qui satisfont à toutes les conditions. Jouez encore plus avec les commandes pour financer le rela power.