Comment trouver un fichier sous Linux à l'aide de la ligne de commande

Ce qu'il faut savoir

  • La commande utilisée pour rechercher des fichiers s'appelle trouve. La syntaxe de base de la commande find est la suivante: trouve [nom de fichier].
  • Après trouve, utilisez un raccourci pour spécifier le répertoire: "." pour les dossiers imbriqués; "/" pour l'ensemble du système de fichiers; "~" pour le répertoire personnel de l'utilisateur actif.
  • Utiliser l'expression -Nom pour rechercher un nom de fichier. Par exemple: trouver / -nom *.mp3 recherche dans tout le système de fichiers un fichier appelé *.mp3.

Cet article explique ce que Linuxtrouve est, offre des raccourcis d'emplacement de recherche, des expressions courantes, des exemples d'utilisation, des modèles, comment envoyer les sorties de la commande find à un fichier et comment rechercher et exécuter une commande sur un fichier.

Utilisez la commande 'find' pour localiser un fichier sous Linux

La commande utilisée pour rechercher des fichiers s'appelle trouve.

La syntaxe de base de la commande find est la suivante:

trouver le nom du fichier.

Le chemin actuellement actif marque l'emplacement de recherche, par défaut. Pour rechercher l'ensemble du lecteur, tapez ce qui suit:

trouver / nom de fichier.

Si, toutefois, vous souhaitez rechercher le dossier dans lequel vous vous trouvez actuellement, utilisez la syntaxe suivante:

trouve. nom de fichier.
Trouvez la commande lorem.odt dans la fenêtre Terminal sur Ubuntu Linux

Lorsque vous effectuez une recherche par nom sur l'ensemble du lecteur, utilisez la syntaxe suivante:

find / -name nom de fichier.
  • La première partie de la commande find est la commande find.
  • La deuxième partie est l'endroit où commencer la recherche.
  • La partie suivante est une expression qui détermine ce qu'il faut trouver.
  • La dernière partie est le nom du fichier à rechercher.

Pour accéder au shell (parfois appelé fenêtre de terminal) dans la plupart des distributions, cliquez sur l'icône appropriée ou appuyez sur Ctrl+Alt+T.

Rechercher des raccourcis vers l'emplacement

Le premier argument après la commande find est l'emplacement que vous souhaitez rechercher. Bien que vous puissiez spécifier un répertoire spécifique, vous pouvez utiliser un métacaractère servir de substitut. Les trois métacaractères qui fonctionnent avec cette commande incluent:

  • Période (.): spécifie le dossier actuel et tous les dossiers imbriqués.
  • Barre oblique (/): spécifie l'intégralité du système de fichiers.
  • Tilde (~): spécifie le répertoire personnel de l'utilisateur actif.

La recherche dans l'ensemble du système de fichiers peut générer des erreurs d'accès refusé. Exécutez la commande avec des privilèges élevés (en utilisant la commande sudo) si vous devez rechercher dans des endroits auxquels votre compte standard ne peut normalement pas accéder.

Expressions

L'expression la plus courante que vous utiliserez est -Nom, qui recherche le nom d'un fichier ou d'un dossier.

Il existe cependant d'autres expressions que vous pouvez utiliser:

  • -amine n: Le fichier a été consulté pour la dernière fois +/- m il y a quelques minutes, selon la façon dont vous entrez l'heure.
  • -un nouveau, un débutant: Prend un autre fichier comme référence pour rechercher tous les fichiers auxquels on a accédé plus récemment et le fichier de référence.
  • -atime n: Le fichier a été consulté pour la dernière fois plus/moins que m il y a quelques jours, en fonction de la manière dont vous saisissez l'heure cible (n).
  • -cmin n: Le fichier a été modifié pour la dernière fois m il y a quelques minutes, selon la manière dont vous saisissez l'heure cible (n).
  • -plus: Prend un autre fichier comme référence pour rechercher tous les fichiers auxquels on a accédé plus récemment et le fichier de référence.
  • -ctime n: Le fichier a été consulté pour la dernière fois plus/moins que m il y a quelques jours, en fonction de la manière dont vous saisissez l'heure cible (n).
  • -vide:Le fichier est vide.
  • -exécutable: Le fichier est exécutable.
  • -faux: Toujours faux.
  • -typefs: le fichier se trouve sur le système de fichiers spécifié.
  • -gid n: Le fichier appartient au groupe avec l'ID m.
  • -groupe nom de groupe: Le fichier appartient au groupe nommé.
  • -ilname motif: Recherchez un lien symbolique mais ignorez la casse.
  • -iname motif: Recherchez un fichier mais ignorez la casse.
  • -inum n: recherche un fichier avec l'inode spécifié.
  • -ipath chemin: Recherchez un chemin mais ignorez la casse.
  • -expression iregex: recherche une expression mais ignore la casse.
  • -liens n: recherchez un fichier avec le nombre de liens spécifié.
  • -lname nom: Recherche d'un lien symbolique.
  • -mmin n: Le fichier a été consulté pour la dernière fois +/- m il y a quelques minutes, selon la façon dont vous entrez l'heure.
  • -mtime n: Le fichier a été consulté pour la dernière fois plus/moins que m il y a quelques jours, en fonction de la manière dont vous saisissez l'heure cible (n).
  • -nom nom: Recherchez un fichier avec le nom spécifié.
  • -nom plus récent: recherche un fichier édité plus récemment que le fichier de référence donné.
  • -pas de groupe: recherchez un fichier sans identifiant de groupe.
  • -nouser: recherchez un fichier auquel aucun utilisateur n'est attaché.
  • -chemin chemin: rechercher un chemin.
  • -lisible: recherchez des fichiers lisibles.
  • -modèle d'expression régulière: recherche de fichiers correspondant à une expression régulière.
  • -type type: Recherche d'un type particulier. Les options de type incluent :
    • -type d: Directoris
    • -type f: Des dossiers
    • -type l: Liens symboliques
  • -uid uid: L'ID utilisateur numérique du fichier est le même que l'UID.
  • -Nom d'utilisateur: le fichier appartient à l'utilisateur spécifié.
  • -inscriptible: rechercher des fichiers dans lesquels il est possible d'écrire.

Exemple d'utilisation de la commande Rechercher

Voici quelques-unes des façons dont vous pouvez utiliser la commande find.

Comment trouver des fichiers consultés il y a plus d'un certain nombre de jours

Pour trouver tous les fichiers de votre dossier de départ auxquels vous avez accédé il y a plus de 100 jours:

trouver ~ -atime +100.

Comment trouver des fichiers et des dossiers vides

Pour trouver tous les fichiers et dossiers vides de votre système:

trouver / -vider.

Comment trouver tous les fichiers exécutables

Pour trouver tous les fichiers exécutables sur votre ordinateur:

trouver / -exécutable.

Comment trouver tous les fichiers lisibles

Pour trouver tous les fichiers qui sont lisibles:

trouver / -lisible.

Motifs

Lorsque vous recherchez un fichier, vous pouvez utiliser un modèle. Par exemple, recherchez tous les fichiers avec l'extension mp3:

trouver / -nom *.mp3.

Selon le shell que vous utilisez, vous devrez peut-être échapper à l'astérisque. Si vous exécutez la commande et n'obtenez pas les résultats que vous attendez, essayez de citer le modèle entier pour échapper à l'astérisque, comme ceci: trouver / -nom '*.mp3'

Terminal dans Ubuntu Linux affichant la commande " find -name *.mp3 "

Comment envoyer la sortie de la commande Rechercher à un fichier

Le principal problème avec la commande find est qu'elle peut parfois renvoyer trop de résultats à regarder en une seule fois. Dirigez la sortie vers le commande de queue, ou affichez les lignes dans un fichier comme suit:

find / -name *.mp3 -fprint nameoffiletoprintto.

Comment rechercher et exécuter une commande sur un fichier

Pour rechercher et modifier un fichier en même temps, tapez:

find / -name nom de fichier -exec nano '{}' \;

La commande ci-dessus recherche un fichier appelé nom de fichier, puis exécute l'éditeur nano pour le fichier qu'il trouve.

Nano est le nom d'une commande, pas une partie exacte de cette syntaxe.