Comment rechercher des fichiers et des dossiers sous Linux à l'aide de la ligne de commande

Table des matières:

Comment rechercher des fichiers et des dossiers sous Linux à l'aide de la ligne de commande
Comment rechercher des fichiers et des dossiers sous Linux à l'aide de la ligne de commande

Vidéo: Comment rechercher des fichiers et des dossiers sous Linux à l'aide de la ligne de commande

Vidéo: Comment rechercher des fichiers et des dossiers sous Linux à l'aide de la ligne de commande
Vidéo: Astuce 46 - Partager une connexion internet avec votre Mac - YouTube 2024, Mars
Anonim
La plupart des gens utilisent un gestionnaire de fichiers graphique pour rechercher des fichiers sous Linux, tels que Nautilus sous Gnome, Dolphin sous KDE et Thunar sous Xfce. Cependant, il existe plusieurs façons d’utiliser la ligne de commande pour rechercher des fichiers sous Linux, quel que soit le gestionnaire de bureau utilisé.
La plupart des gens utilisent un gestionnaire de fichiers graphique pour rechercher des fichiers sous Linux, tels que Nautilus sous Gnome, Dolphin sous KDE et Thunar sous Xfce. Cependant, il existe plusieurs façons d’utiliser la ligne de commande pour rechercher des fichiers sous Linux, quel que soit le gestionnaire de bureau utilisé.
Image
Image

Utilisation de la commande de recherche

La commande "Rechercher" vous permet de rechercher des fichiers pour lesquels vous connaissez les noms de fichiers approximatifs. La forme la plus simple de la commande recherche les fichiers du répertoire en cours et de manière récursive dans ses sous-répertoires correspondant aux critères de recherche fournis. Vous pouvez rechercher des fichiers par nom, propriétaire, groupe, type, autorisations, date et autres critères.

La commande suivante à l'invite répertorie tous les fichiers présents dans le répertoire actuel.

find.

Le point après «trouver» indique le répertoire en cours.

Pour rechercher des fichiers correspondant à un modèle spécifique, utilisez la commande
Pour rechercher des fichiers correspondant à un modèle spécifique, utilisez la commande

-name

argument. Vous pouvez utiliser des métacaractères de nom de fichier (tels que

*

), mais vous devez soit mettre un caractère d'échappement (

) devant chacune d'elles ou entre guillemets.

Par exemple, si nous voulons trouver tous les fichiers qui commencent par “pro” dans le répertoire Documents, nous utiliserons le

cd Documents/

commande pour accéder au répertoire Documents, puis tapez la commande suivante:

find. -name pro*

Tous les fichiers du répertoire en cours commençant par «pro» sont répertoriés.

REMARQUE: Par défaut, la commande find est sensible à la casse. Si vous souhaitez que la recherche d'un mot ou d'une phrase soit insensible à la casse, utilisez la commande

-iname

option avec la commande de recherche. C’est la version insensible à la casse du

-name

commander.

Si
Si

find

ne localise aucun fichier correspondant à vos critères, il ne produit aucun résultat.

La commande de recherche a beaucoup d'options disponibles pour affiner la recherche. Pour plus d'informations sur la commande find, exécutez

man find

dans une fenêtre de terminal et appuyez sur Entrée.

Utilisation de la commande de localisation

La commande de localisation est plus rapide que la commande de recherche car elle utilise une base de données précédemment construite, alors que la commande de recherche effectue une recherche dans le système réel, dans tous les répertoires et fichiers réels. La commande de localisation retourne une liste de tous les noms de chemins contenant le groupe de caractères spécifié.

La base de données est mise à jour périodiquement à partir de cron, mais vous pouvez également la mettre à jour vous-même à tout moment pour obtenir des résultats à la minute près. Pour ce faire, tapez la commande suivante à l'invite:

sudo updatedb

Entrez votre mot de passe lorsque vous y êtes invité.

locate mydata

Par exemple, la commande ci-dessus a trouvé deux fichiers contenant «mydata» et un fichier contenant «data».

Si vous souhaitez rechercher tous les fichiers ou répertoires contenant exactement et uniquement vos critères de recherche, utilisez la commande
Si vous souhaitez rechercher tous les fichiers ou répertoires contenant exactement et uniquement vos critères de recherche, utilisez la commande

-b

option avec la commande de localisation, comme suit.

locate -b ‘mydata’

La barre oblique inverse dans la commande ci-dessus est un caractère globulant, qui permet de développer les caractères génériques dans un nom de fichier non spécifique en un ensemble de noms de fichiers spécifiques. Un caractère générique est un symbole qui peut être remplacé par un ou plusieurs caractères lors de l'évaluation de l'expression. Les symboles génériques les plus courants sont le point d'interrogation (

), qui représente un seul caractère et l’astérisque (

*

), qui représente une chaîne de caractères contigus. Dans l'exemple ci-dessus, la barre oblique inverse désactive le remplacement implicite de «mydata» par «* mydata *», de sorte que vous obtenez uniquement des résultats contenant «mydata».

La commande mlocate est une nouvelle implémentation de Locate. Il indexe l'ensemble du système de fichiers, mais les résultats de la recherche n'incluent que les fichiers auxquels l'utilisateur actuel a accès. Lorsque vous mettez à jour la base de données mlocate, il conserve les informations d'horodatage dans la base de données. Ceci permet à mlocate de savoir si le contenu d'un répertoire a changé sans en relire le contenu et rend les mises à jour de la base de données plus rapides et moins lourdes sur votre disque dur.
La commande mlocate est une nouvelle implémentation de Locate. Il indexe l'ensemble du système de fichiers, mais les résultats de la recherche n'incluent que les fichiers auxquels l'utilisateur actuel a accès. Lorsque vous mettez à jour la base de données mlocate, il conserve les informations d'horodatage dans la base de données. Ceci permet à mlocate de savoir si le contenu d'un répertoire a changé sans en relire le contenu et rend les mises à jour de la base de données plus rapides et moins lourdes sur votre disque dur.

Lorsque vous installez mlocate, le fichier binaire / usr / bin / local est remplacé par mlocate. Pour installer mlocate, s’il n’est pas déjà inclus dans votre distribution Linux, tapez la commande suivante à l’invite.

sudo apt-get install mlocate

REMARQUE: plus tard dans cet article, nous vous montrerons une commande qui vous permettra de déterminer l'emplacement de l'exécutable d'une commande, le cas échéant.

La commande mlocate n'utilise pas le même fichier de base de données que la commande de localisation standard. Par conséquent, vous souhaiterez peut-être créer la base de données manuellement en tapant la commande suivante à l'invite:
La commande mlocate n'utilise pas le même fichier de base de données que la commande de localisation standard. Par conséquent, vous souhaiterez peut-être créer la base de données manuellement en tapant la commande suivante à l'invite:

sudo /etc/cron.daily/mlocate

La commande mlocate ne fonctionnera pas tant que la base de données n'aura pas été créée manuellement ou lorsque le script sera exécuté à partir de cron.

Pour plus d'informations sur la commande local ou mlocate, tapez
Pour plus d'informations sur la commande local ou mlocate, tapez

man locate

ou

man mlocate

dans une fenêtre de terminal et appuyez sur Entrée. Le même écran d'aide s'affiche pour les deux commandes.

Utiliser la commande Which

La commande "quel" renvoie le chemin absolu de l'exécutable appelé lorsqu'une commande est émise. Cela est utile pour trouver l'emplacement d'un exécutable afin de créer un raccourci vers le programme sur le bureau, sur un panneau ou à un autre emplacement du gestionnaire de bureau. Par exemple, en tapant la commande

which firefox

affiche les résultats affichés dans l'image ci-dessous.

Par défaut, la commande qui affiche uniquement le premier exécutable correspondant. Pour afficher tous les exécutables correspondants, utilisez la commande
Par défaut, la commande qui affiche uniquement le premier exécutable correspondant. Pour afficher tous les exécutables correspondants, utilisez la commande

-a

option avec la commande:

which -a firefox

Vous pouvez rechercher plusieurs exécutables simultanément, comme indiqué dans l’image suivante. Seuls les chemins d'accès aux exécutables trouvés sont affichés.Dans l'exemple ci-dessous, seul l'exécutable "psp" a été trouvé.

Remarque: la commande qui recherche uniquement la variable PATH de l'utilisateur actuel. Si vous recherchez un exécutable uniquement disponible pour l'utilisateur root en tant qu'utilisateur normal, aucun résultat ne s'affichera.
Remarque: la commande qui recherche uniquement la variable PATH de l'utilisateur actuel. Si vous recherchez un exécutable uniquement disponible pour l'utilisateur root en tant qu'utilisateur normal, aucun résultat ne s'affichera.

Pour plus d'informations sur la commande quelle, tapez "homme qui" (sans les guillemets) à l'invite de commande dans une fenêtre de terminal et appuyez sur Entrée.

Utilisation de la commande Whereis

La commande whereis est utilisée pour savoir où se trouvent les fichiers binaires, source et man de cette commande. Par exemple, en tapant

whereis firefox

à l'invite affiche les résultats comme indiqué dans l'image suivante.

Si vous souhaitez uniquement afficher le chemin d'accès à l'exécutable, et non les chemins d'accès aux pages source et man (ual), utilisez la commande
Si vous souhaitez uniquement afficher le chemin d'accès à l'exécutable, et non les chemins d'accès aux pages source et man (ual), utilisez la commande

-b

option. Par exemple, la commande

whereis -b firefox

affichera seulement

/usr/bin/firefox

comme résultat. C'est pratique car vous rechercherez probablement le fichier exécutable d'un programme plus souvent que vous ne le feriez pour les pages source et man de ce programme. Vous pouvez également rechercher uniquement les fichiers source (

-s

) ou uniquement pour les pages de manuel (

-m

).

Pour plus d'informations sur la commande whereis, tapez

man whereis

dans une fenêtre de terminal et appuyez sur Entrée.

Comprendre la différence entre la commande Whereis et la commande Which

La commande whereis vous indique l'emplacement des pages binaire, source et man pour une commande, tandis que la commande qui vous indique uniquement l'emplacement du binaire de la commande.

La commande whereis recherche dans une liste de répertoires spécifiques les fichiers binaire, source et man, tandis que la commande correspondante cherche dans les répertoires répertoriés dans la variable d'environnement PATH de l'utilisateur actuel. Pour la commande whereis, la liste des répertoires spécifiques est disponible dans la section FILES des pages de manuel de la commande.

En ce qui concerne les résultats affichés par défaut, la commande whereis affiche tout ce qu'elle trouve, tandis que la commande qui affiche uniquement le premier exécutable trouvée. Vous pouvez changer cela en utilisant le

-a

option, discuté plus tôt, pour la commande qui.

Comme la commande whereis utilise uniquement des chemins codés en dur dans la commande, il est possible que vous ne trouviez pas toujours ce que vous recherchez. Si vous recherchez un programme susceptible d’être installé dans un répertoire ne figurant pas dans les pages de manuel de la commande whereis, vous pouvez utiliser la commande which avec le

-a

possibilité de trouver toutes les occurrences de la commande dans l’ensemble du système.

Conseillé: