La façon de découvrir ce que vous recherchez peut être plus profonde que vous ne le pensiez, ou elle peut être juste au coin de la rue. Tout dépend de votre apparence, de l'endroit où vous regardez et de ce que vous recherchez. Lorsque vous résolvez des problèmes qui surviennent, cela peut être plus facile qu'il n'y paraît. L'un de mes outils préférés est le find
commande. Le find
La commande est un utilitaire permettant de parcourir une arborescence de répertoires, descendant dans les répertoires avec chaque chemin répertorié et évaluant les expressions ajoutées pour chaque fichier répertorié. Avec cette commande, vous pouvez accomplir beaucoup de choses. Dans cet article, je couvre différentes manières, ainsi que des lignes simples, pour vous aider à find
fichiers volumineux, à find
plusieurs fichiers, et même pour localiser des types de fichiers spécifiques.
Trouver plusieurs fichiers sous Linux
Le find
La commande est utilisée de différentes manières. Une chose que vous ne voulez pas faire en tant qu'administrateur système est de travailler plus dur que nécessaire. Au lieu d'exécuter la même commande pour rechercher un fichier encore et encore, vous pouvez utiliser la commande find
commande pour localiser plusieurs fichiers en même temps.
$ find /home -type f -name file.txt -exec {} \;
Ce one-liner peut être décomposé. Je trouve préférable de le lire presque comme une phrase :
- recherche dans
/home
répertoire - recherche d'un fichier (
-type f
) ou un répertoire (-type d
) - le nom du fichier est file.txt (
-name file.txt
) - exécuter une autre commande à partir de la sortie précédente
Trouver des fichiers volumineux sous Linux
Vous pouvez également utiliser find
pour découvrir des fichiers volumineux sous Linux. Trouver des fichiers volumineux s'est avéré utile pour moi à long terme. find
peut aider à localiser rapidement des fichiers volumineux, tels que des sauvegardes et des fichiers ISO.
$ find / -type f -size +500000k -exec ls -lh {} \;
Ce one-liner peut être décomposé :
- rechercher le
/
répertoire - recherche d'un fichier (
type -f
) - recherche d'un fichier supérieur à
500000k
- exécution de la commande
ls -lh
sur les fichiers trouvés dans la sortie précédente
Trouver des types de fichiers spécifiques sous Linux
Une autre bonne méthode consiste à localiser les extensions de fichiers à l'aide de la commande find
commande. Je trouve cela utile, car cela m'a montré des moyens de trouver des fichiers spécifiques avec seulement un mot-clé spécifique. Dans ce cas, l'exemple ci-dessous recherche des fichiers qui ne contiennent qu'une extension spécifique :
# find / -type f \( -name "*.sh" -o -name "*.txt" )
Pour disséquer ceci :
- recherche dans le
/
répertoire - recherche d'un fichier (
-type f
) ou un répertoire (-type d
) - recherche d'un nom de fichier qui est un caractère générique mais se termine par l'extension
.sh
ou.txt
J'ai même recherché du contenu dans un fichier qui correspond à un mot-clé spécifique. Ces commandes peuvent être ajustées et modifiées pour obtenir le résultat souhaité.
Rechercher les fichiers modifiés sous Linux
Le dernier exemple montre comment find
un fichier modifié dans les 50 derniers jours. Cela peut être utile lorsque vous devez localiser des fichiers récemment modifiés pour des raisons de sécurité ou si des utilisateurs indésirables sur le réseau accèdent à d'autres fichiers.
# find / -type f -ctime +50 -exec rm -f {} \;
La commande ci-dessus montre :
- recherche dans le
/
répertoire - recherche d'un fichier (
-type f
) ou un répertoire (-type d
) - recherche de fichiers antérieurs à
50
jours - exécution de la commande
rm -f
sur les fichiers trouvés dans la sortie précédente
Cela peut aider à supprimer ces fichiers malveillants en une seule fois. Vous devez juste vous assurer que les fichiers que vous sélectionnez sont les fichiers que vous souhaitez supprimer. Une façon de vérifier est d'exécuter la commande sans le exec
section pour voir les fichiers qui apparaissent dans la sortie. S'il y a un grand nombre de fichiers, redirigez la sortie dans un fichier :
# find / -type f -ctime +50 > files.txt
Le contenu peut être examiné et vérifié avant d'exécuter un one-liner qui supprime le /etc
dossier. Pas idéal.
Conclusion
Le find
La commande a une variété d'utilisations et de disponibilité où les administrateurs peuvent trouver le contenu dont ils ont besoin (sans jeu de mots). Avec cette commande, les possibilités sont littéralement infinies ! En matière de dépannage, cette flexibilité de recherche et d'investigation vous permet de rechercher des éléments que vous n'aviez peut-être pas remarqués auparavant. En conséquence, vous pourriez trouver la réponse que vous cherchiez (jeu de mots).
[ Cours en ligne gratuit :Présentation technique de Red Hat Enterprise Linux. ]