Problème AWK ou SED

Fermé
thebluffer - 21 janv. 2009 à 11:11
 thebluffer - 21 janv. 2009 à 11:48
Bonjour,

J'essaie de trouver tous les fichiers qui contiennent un mot1 puis un mot2 sur une ligne différente. J'ai essayer les deux commandes suivantes, mais il semble que lorsque le mot2 n'est pas trouvé on prenne la fin de fichier comme fin de bloc. Une idée du comment faire ?

awk '/mot1/,/mot2/' monfichier

sed -n '/mot1/,/mot2/'p monfichier
Merci.

1 réponse

jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 896
21 janv. 2009 à 11:27
Salut,
sed -n '/mot1/{:z;N;/mot2/!bz;p}' fichier
;-))
0
Merci !

Sans vouloir abuser, j'utilise un find pour trouver les fichier à "scanner"

find . -name "*.xml" -exec sed -n '/mot1/{:z;N;/mot2/!bz;p}' {} \;

Comment je fais pour afficher le nom du fichier plutôt que son contenu ?
0