Afficher contenu lignes de fichiers avec critères

Afficher contenu lignes de fichiers avec critères - Codes et scripts - Linux et OS Alternatifs

Marsh Posté le 19-12-2011 à 11:18:17    

Bonjour,  
 
 
 
Sous Debian, je souhaiterai récupérer des informations de plusieurs fichiers placés dans des sous répertoires en fonction de critères
J'ai donc utilisé la fonction
 
find /data/config -name "xx*2011-12-18*" -print | xargs grep toto
Ce qui me permet de trouver les fichiers "xx" qui contiennent la chaine de caractère toto.
Mais ensuite je souhaiterai pouvoir extraire les 3 lignes qui suivent cette chaine toto
 
Si je pouvais avoir un coup de main .
Merci d'avance

Reply

Marsh Posté le 19-12-2011 à 11:18:17   

Reply

Marsh Posté le 19-12-2011 à 12:04:09    

Dans le man de grep il y a une option qui permet de récupérer le nombre de ligne souhaitées qui suivent la chaine de caractere recherchée. Regarde de ce coté la :)

Reply

Marsh Posté le 20-12-2011 à 12:02:07    

Salut, voici :)
 

Code :
  1. $ cat FILE
  2. foo
  3. bar
  4. base
  5. qux
  6. fum
  7. $
  8. $ sed -n '/bar/{n;p;n;p;n;p;q}' FILE
  9. base
  10. qux
  11. fum
  12. $

Reply

Marsh Posté le 20-12-2011 à 12:13:46    

Autre solution avec awk :
 

Code :
  1. $ awk '/bar/{c=3; getline} (c>0) {print; c--}' FILE
  2. base
  3. qux
  4. fum

Reply

Marsh Posté le 20-12-2011 à 12:26:49    

Ou encore (le meilleur pour la fin)
 

Code :
  1. $ sed -n '/bar/,4p' FILE

Reply

Sujets relatifs:

Leave a Replay

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