Question sur rgrep

Question sur rgrep - Codes et scripts - Linux et OS Alternatifs

Marsh Posté le 18-08-2005 à 21:30:53    

Bonjour,
 
J'aimerais rechercher le motif "Toto" dans tous les fichiers .h, par exemple. Pour cela j'ai pensé à rgrep mais je n'arrive qu'à faire une recherche dans tous les fichiers : rgrep "Toto" *, rgrep "Toto" *.h ne marche pas.
 
Y'a t-il une solution ?
 
Pour l'instant la seul solution que j'ai trouvé est :  
find . -name "*.h" -exec grep "Toto" {} +;
 
Merci

Reply

Marsh Posté le 18-08-2005 à 21:30:53   

Reply

Marsh Posté le 18-08-2005 à 21:55:47    

tu cherches le motif Toto ou bien "Toto" ? dans le 2° cas, il doit falloir protéger les guillemets  
 
rgrep Toto * pour le premier cas
rgrep \"Toto\" * pour le 2°
 
note que l'option -R de grep, donne plus ou moins le même résultat


---------------
Celui qui pose une question est idiot 5 minutes. Celui qui n'en pose pas le reste toute sa vie. |  Membre du grand complot pharmaceutico-médico-scientifico-judéo-maçonnique.
Reply

Marsh Posté le 19-08-2005 à 04:21:09    

grep -R Toto *.h
 
Ca devrait marcher.

Reply

Marsh Posté le 19-08-2005 à 09:03:43    

Voila ce que me donne grep -R Toto *.h
  grep: *.h: Aucun fichier ou répertoire de ce type
 
Ma version de grep est 2.5.1, je suis sous debian sid

Reply

Marsh Posté le 19-08-2005 à 09:28:07    

mr simon a écrit :

Voila ce que me donne grep -R Toto *.h
  grep: *.h: Aucun fichier ou répertoire de ce type
 
Ma version de grep est 2.5.1, je suis sous debian sid


Fais un ls -R *.h et tu verras surement que tu n'as pas de fichier h a la racine de ton repertoire.
Le *.h, c'est le shell qui l'expand.


---------------
BiBi Max
Reply

Marsh Posté le 19-08-2005 à 10:51:27    

Oui je n'ai pas de .h à la racine de mon repertoire, en fait je souhaite rechercher dans un ensemble de repertoires tous les fichiers .h qui contiennents Toto.

Reply

Marsh Posté le 19-08-2005 à 11:03:05    

La solution avec le find me semble une bonne idée
 

Code :
  1. find . -name "*.h" -exec grep "toto" '{}' \;


Message édité par BiBi Max le 19-08-2005 à 11:05:18

---------------
BiBi Max
Reply

Marsh Posté le 19-08-2005 à 12:48:22    

BiBi Max a écrit :

La solution avec le find me semble une bonne idée
 

Code :
  1. find . -name "*.h" -exec grep "toto" '{}' \;



 
Moi je fais :

Code :
  1. find . -name "*.h" | xargs grep toto


Message édité par Combi_A_Vendre le 19-08-2005 à 12:48:47

---------------
The best way to accelerate a computer running windows is at 9.8m.s-2
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed