Le plus souvent, les fichiers sont égarés sur votre ordinateur. Pour les trouver, vous devrez utiliser quelques outils et un tas de règles. Dans la série Terminal Tuts d'aujourd'hui, nous allons vous expliquer comment trouver des fichiers sur vos systèmes Linux en connaissant toutes les informations sur les données et en utilisant le terminal.
L'utilitaire fourni par GNU sous Linux pour trouver des fichiers est le find commande. C'est beaucoup plus rapide, efficace et précis que n'importe quel programme installé manuellement ou programme graphique. Dans cet article, nous allons supposer que les lecteurs sont familiarisés avec les commandes Linux de base cd et ls commandes.
Commande de recherche Linux
Commençons d'abord par quelques commandes et paramètres simples, où nous rechercherons des fichiers en fonction de leur nom.
-nom
find -name abc
Puisque nous recherchons en fonction du nom, notez l'utilisation du -name paramètre. Dans l'exemple, abc est le nom du fichier que vous recherchez. La recherche s'exécutera dans le répertoire de travail de votre session de terminal. Voici quelques propriétés importantes du -name paramètre :
- Le nom a pour être exact. Il ne recherchera pas les fichiers avec l'argument donné dans le nom.
- Il est sensible à la casse.
- Il recherche les deux fichiers et répertoires par le nom fourni.
Certaines utilisations modifiées du paramètre -name :
-iname
Utiliser -iname au lieu de -nom rend la recherche insensible à la casse. Cela signifie que la recherche ne se concentrera pas sur le fait que les noms de fichiers sont en majuscules ou en minuscules.
Recherche à l'aide d'un mot-clé
Rechercher un fichier non pas en utilisant son nom exact mais un mot-clé est également simple. Il vous suffit de modifier le nom du fichier que vous utilisez pour l'attribut -name. La syntaxe est la suivante :
find -name "*test*"
REMARQUE :Les guillemets doubles ne sont pas une erreur. Si vous ne mettez pas les guillemets lors de la recherche de fichiers avec un mot-clé, vous obtiendrez une erreur de syntaxe.
Dans la CLI, '*' signifie tout. Il affiche tous les noms de fichiers qui ont quoi que ce soit avant le test , ou après. De plus, vous pouvez utiliser le -iname paramètre au lieu de -nom pour rendre la recherche encore plus large.
Format de fichier
Vous pouvez utiliser le -nom paramètre pour trouver des fichiers avec une extension spécifique. Par exemple, si vous souhaitez lister tous les scripts Python, vous pouvez saisir ce code :
find -name "*.py"
Parce que tous les scripts Python utilisent l'extension .py.
-type
Ensuite, le -type paramètre, qui représente le type du fichier. La commande find fournit plusieurs options pour le -type paramètre, mais pour la plupart des utilisateurs, seuls deux sont utiles. Ils sont les d et f valeurs. Le d signifie que l'utilisateur ne veut que les répertoires répertoriés, et f dit que l'utilisateur ne veut que les fichiers (pas de répertoires) répertoriés. Voici un exemple :
Les autres options disponibles sont :
- c :caractère spécial (non tamponné)
- p :tube nommé
- l :Lien symbolique
- s :socket
- d :Porte (Solaris)
-taille
La commande find peut également rechercher des fichiers en fonction de leur taille. Il utilise diverses options pour différentes unités de taille. Certains sont :
- c :pour les octets.
- k :pour les Ko
- M :pour les Mo
- G :pour les Go
Dans la syntaxe, vous devez mettre un nombre devant le symbole que vous utilisez. Par exemple, si vous voulez indiquer 50 Mo, vous devez écrire 50M .
Vous devez également mettre un "+" ou un "-" devant le nombre d'unités. Si vous souhaitez rechercher des fichiers plus de la quantité, utilisez "+". Si elle est inférieure à la taille spécifiée, utilisez '-'.
Voici un exemple où je recherche un fichier de plus de 400 Mo. J'ai nommé le fichier 465 car c'est sa taille.
Gamme de taille
Puisque vous pouvez mentionner un plus de et moins de la limite, vous pouvez également combiner les deux pour rechercher des fichiers dans une plage de taille spécifique. Cela nécessite deux -taille les attributs. Par exemple, si je dois rechercher des fichiers de plus de 400 Mo mais de moins de 500 Mo, je peux utiliser ceci :
find -size +400M -size -500M
Voici un exemple :
Définir un lieu
Pour rechercher des fichiers dans un répertoire, la navigation dans le répertoire n'est pas nécessaire. Vous pouvez également spécifier l'emplacement d'un répertoire si c'est le seul endroit où vous souhaitez rechercher les fichiers. L'emplacement doit être écrit juste après la trouver . Donc, si vous allez mentionner l'emplacement, vous devez le faire avant tout paramètre ou valeur.
Par exemple ici, je recherche dans le répertoire Téléchargements :
find Downloads/ -name test
Sortie :
De même, si vous souhaitez rechercher un fichier dans tout le système, utilisez / comme emplacement. Vous aurez besoin d'un accès root ou d'autorisations de superutilisateur, utilisez donc sudo avant la commande. N'oubliez pas que cela prendra un peu de temps car il analyse l'ensemble du système. Exemple de commande :
sudo find / -name abc
Conclusion
Il s'agit des options les plus importantes et les plus utiles de la commande find sur les systèmes Linux. Toutes ces options peuvent sembler un peu difficiles à retenir au début, mais au fur et à mesure que vous commencerez à les utiliser régulièrement, vous utiliserez le plus souvent la méthode Terminal plutôt que la méthode GUI.