Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
pratique:informatique:recherche [01/04/2020 19:15] Zatalyzpratique:informatique:recherche [11/08/2023 08:53] (Version actuelle) – [Avec grep] Zatalyz
Ligne 1: Ligne 1:
 ====== Trouver et remplacer des informations ====== ====== Trouver et remplacer des informations ======
 +===== Avec grep =====
  
 Chercher une info dans un tas de log dans un dossier et sortir les résultats dans un fichier à part : Chercher une info dans un tas de log dans un dossier et sortir les résultats dans un fichier à part :
Ligne 6: Ligne 7:
 Mais pour du récursif j'ai pas encore trouvé bien probant. Celle-ci marche mais va chercher dans tous les types de fichiers. Mais pour du récursif j'ai pas encore trouvé bien probant. Celle-ci marche mais va chercher dans tous les types de fichiers.
   grep -nri "Recherche" > nomfichier.txt   grep -nri "Recherche" > nomfichier.txt
-   
-Pour chercher une info et afficher son contexte, ici les 5 phrases avant/après, ajouter l'option ''--context=5''. C'est évidement surtout utile sur une occurrence en particulier (pour éviter d'ouvrir tout le fichier), pas lors de la recherche globale. 
  
 +Si les dossiers sont de même profondeur (cas des logs), ceci peut marcher :
 +  grep -nri "Recherche" log/2020/*/*.log
 +
 +Autres options sympas de grep :
 +  * ''--color'' : met en couleur ce qui est recherché (permet de voir plus vite si c'est bien le bon truc).
 +  * ''-C N'' (N est un nombre) : affiche les lignes avant et après, afin d'avoir le contexte. Chaque bloc est séparé par des doubles tirets. 
 +    * ''-A N'' : idem mais uniquement les lignes après l’occurrence ("after").
 +    * ''-B N'' : idem mais uniquement les lignes avant l’occurrence ("before").
 +
 +Pour afficher seulement les fichiers où apparait ce qu'on cherche, c'est ''-l''. Et donc, de façon récursive, sans tenir compte de la case, pour n'afficher que le nom des fichiers :
 +  grep -lri "truc" dossier/*
 +===== Avec find =====
  
 Pour chercher une chaîne de caractères uniquement dans les fichiers d'une certaine extension (pour l'exemple les fichiers .txt) : Pour chercher une chaîne de caractères uniquement dans les fichiers d'une certaine extension (pour l'exemple les fichiers .txt) :
CC Attribution-Noncommercial-Share Alike 4.0 International Driven by DokuWiki
pratique/informatique/recherche.1585761341.txt.gz · Dernière modification : 30/11/2020 10:35 (modification externe)