Les Allergies
Alimentaires
Posez votre question Signaler

Commande grep

momsse - Dernière réponse le 5 mai 2007 à 16:56
Bonjour,
J'ai quelques soucis d'adaptation à la commande grep, puisque beaucoup d'expression rationnelle ont une signification différente (tel que . *), la question est quelle commande doit-je tapper pour effectuer la recherche suivante:
Trouver parmi mes fichiers (dossier HOME) dont le nom commence par point ceux qui contiennent le mot PATH.
J'ai essayé:
$ grep -l PATH ~/[.].*
$ grep^-l PATH ~/[.]*

J'ai parcouru les pages de maanuel, j'essaie d'appliquer les expression rationnelles spécifique à grep, mais c'est presque a chaque fois le fiasco ...
Lire la suite 

Commande grep »

8 réponses
Réponse
+0
moins plus
Ne pas prendre en compte le "^" dans la deuxième commande ...
Ajouter un commentaire
Réponse
+0
moins plus
Salut,
ls -a | grep '^\..*PATH.*'
;-))
momsse - 5 mai 2007 à 09:23
Merci jipicy !

N'existe t-il pas de mécanisme de substitution pour les fichiers commencant par un point ? De manière à n'utiliser que grep ?

Car l'exercice est de n'utiliser que la seule commande grep ...

Je te remercie pour ta réponse !
jipicy- 5 mai 2007 à 09:53
Re-

Le principe de "grep" est de rechercher un motif dans un fichier, ou dans la sortie standard si aucun fichier n'est fourni. Donc pour rechercher dans la sortie standard, il faut un mécanisme qui produise une sortie, d'où le 'ls -a' dans ton cas...

;-))
Ajouter un commentaire
Réponse
+0
moins plus
Comment faire lorsque l'on cherche plusieurs mots à la fois ?

Ex: chercher avce grep tous les fichiers qui contiennet au moins un des trois mots suivant: papa maman toto ?

Merci d'avance !
Ajouter un commentaire
Réponse
+0
moins plus
Merci pour ces précisions !

Autrement en ce qui concerne la recherche de plusieurs chaine de caractère dans un fichier avec grep ?
Ajouter un commentaire
Réponse
+0
moins plus
Il faut utiliser "egrep" (ou "grep -E") comme ceci :
egrep '(toto|papa|maman)' fichier
ou
grep -E '(toto|papa|maman)' fichier
;-))
Ajouter un commentaire
Réponse
+0
moins plus
Chercher dans tous les fichiers qui commencent par . mais dont le deuxième caractère n'est pas un point:

grep -l PATH ~/.[!.]*
Ajouter un commentaire
Ce document intitulé « Commande grep » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?