Recherche de texte dans fichiers

Résolu
Bonjour,

cela fait plusieurs temps que je me demande coment rechercher les fichiers contenant une chaine de caractère spécifique ?

merci.

5 réponses

  1. Modérateur
    Salut,

    Il suffit de lire man grep et voir
      -H, --with-filename
                  Afficher le nom du fichier pour chaque correspondance. C'est le comportement par défaut quand la recherche est effectuée sur plusieurs fichiers.


    Donc la commande devient

    find /arborescence -type f -exec grep -H 'chaine' {} \;

    37
    1. Modérateur
      Salut,

      rgrep 'chaine' /arborescence
      
      find /arborescence -type f -exec grep 'chaine' {} \;
      --
      lami20j
      16
      1. bonjour
        et comment savoir dans quel fichier se trouve le texte trouvé avec la commande : find /arborescence -type f -exec grep 'chaine' {} \; ?
        Merci de votre aide
        cordialement
        5
        1. Contributeur
          Bonjour,

          De meme je recherche un script qui permey m'indiqué les adresses IP contenu dans les répertoires sous Linux :

          find . -name "*" -exec grep -Hn "192.XXX.30.XXX" {} ;

          --> Erreur : find: Paramètre manquant pour « -exec »

          Test find . -type f -exec grep '192.XXX.30.XXX' {} \

          Je verrais si y a un retour car là aucune redirection version un resultat.txt
          1
          1. salut,

            je ne vois pas à quoi sert le 'find' (vu qu'il n'y a pas de sélection sur le nom de fichier), car 'grep' à une option --recursive (à laquelle 'rgrep' est identique, comme l'a sous-entendu lami20j), qui lui permet de descendre dans les sous-répertoires.
            1