Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1190 connectés 

  FORUM HardWare.fr
  Programmation
  Shell/Batch

  Récupération de x fois 4 lignes dans un fichier log

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Récupération de x fois 4 lignes dans un fichier log

n°1097623
Seb62136
Posté le 26-05-2005 à 09:56:09  profilanswer
 

Je dois récupérer 4 lignes qui se succèdent (plusieurs fois)dans un gros fichier log. Je peux récupérer la première avec un grep, mais comment récupérer les 3 autres derrière ?
 
thanks  :hello:

mood
Publicité
Posté le 26-05-2005 à 09:56:09  profilanswer
 

n°1097627
Elmoricq
Modérateur
Posté le 26-05-2005 à 09:59:51  profilanswer
 

Faudrait plus de détails, sinon j'essaierais avec egrep + le regexp qui va bien.
 
Ou alors, en utilisant l'option '-n' de grep dont on retraiterait ensuite le résultat (à coup awk par exemple).

n°1097660
Seb62136
Posté le 26-05-2005 à 10:24:38  profilanswer
 

Merci. voici un extrait du fichier :
 
Time: Mon May 23 10:17:43 2005
 
*--- Received a close message from client-*
Host Name: dombo
Client User name: DOMBO\boservice
Process id: 3928
Deleting the client
***********************************************
 
DSAClientHandler::removeClient: Removing client
************************************************
Time: Mon May 23 10:17:43 2005
 
*----- Deleting the following client ----------*
Host Name: dombo
Client User name: DOMBO\boservice
Process id: 3928
 
Je voudrais récupérer (les 4 dernières lignes) que l'on retrouve x fois dans un gros log :
 
*----- Deleting the following client ----------*
Host Name: dombo
Client User name: DOMBO\boservice
Process id: 3928

n°1097670
Elmoricq
Modérateur
Posté le 26-05-2005 à 10:31:45  profilanswer
 

Quand tu dis "récupérer", à quoi penses-tu ?
 
Faut-il repérer les lignes qui se répètent et les sortir ?
 
Ou bien dois-tu rechercher les occurences de ces quatre lignes ? (si c'est ça, sont-elles connues ou s'agit-il, par exemple, toujours des 4 dernières lignes du fichier)

n°1097703
Seb62136
Posté le 26-05-2005 à 10:50:20  profilanswer
 

je veux les repérer et les sortir dans un autres fichiers. Ce ne sont pas les 4 dernières lignes du fichier et elles commencent tjs par "*----- Deleting the following client ----------*".

n°1099291
serimal
Posté le 27-05-2005 à 11:30:50  profilanswer
 

Bonjour
ca peut s'ecrire avec awk :  
on repere la chaine "*----- Deleting " , on arme un compteur pour l'affichage de 4 lignes, qu'on decremente a chaque affichage de ligne
 
awk '/^*----- Dele/{aff=4;} aff {print;aff--;}' fic_a_analyser
 

n°1122808
ironhead
Posté le 17-06-2005 à 10:14:09  profilanswer
 

serimal a écrit :

Bonjour
ca peut s'ecrire avec awk :  
on repere la chaine "*----- Deleting " , on arme un compteur pour l'affichage de 4 lignes, qu'on decremente a chaque affichage de ligne
 
awk '/^*----- Dele/{aff=4;} aff {print;aff--;}' fic_a_analyser


 
 
 
Bonjour j'ai un peu le meme besoin, sauf que je dois récupérer les 55 dernieres lignes d'un fichier de log, et les resortir sur un autre fichier qui n'est pas encore créé.
Pouvez vous m'aider?
 
Merci de votre aide.

n°1122810
Elmoricq
Modérateur
Posté le 17-06-2005 à 10:16:56  profilanswer
 

L'utilitaire "tail" est fait pour toi :)


Message édité par Elmoricq le 17-06-2005 à 10:17:00
n°1122865
ironhead
Posté le 17-06-2005 à 10:43:28  profilanswer
 

Elmoricq a écrit :

L'utilitaire "tail" est fait pour toi :)


 
 
je l'ai utilisé mais ca ne me sort aucune ligne.
je me mets dans le meme repertoire et je tape la commande
tail fichierscr.txt 55 >fichierdest.txt
 
 
ca me cree le nouveau fichier, mais vide.

n°1122872
Elmoricq
Modérateur
Posté le 17-06-2005 à 10:46:51  profilanswer
 

man tail  [:petrus75]  
 

tail -55 fichiersrc.txt > fichierdest.txt

mood
Publicité
Posté le 17-06-2005 à 10:46:51  profilanswer
 

n°1122916
ironhead
Posté le 17-06-2005 à 11:09:51  profilanswer
 

Elmoricq a écrit :

man tail  [:petrus75]  
 

tail -55 fichiersrc.txt > fichierdest.txt



 
 
Quand je regarde le man, il me dit tail <fichiersrc> <nb de ligne>
 
et quand je tape ta ligne de commande, ca passe pas.

n°1122927
Elmoricq
Modérateur
Posté le 17-06-2005 à 11:16:00  profilanswer
 

Ah, donc c'est comme ça qu'il faut l'utiliser chez toi.
 
Quand tu dis "ça passe pas", ça te fait quoi ?
fichiersrc.txt n'est pas vide ? Tu as les droits de lecture sur le fichier, les droits d'écriture sur le répertoire ?

n°1122977
ironhead
Posté le 17-06-2005 à 11:53:48  profilanswer
 

Elmoricq a écrit :

Ah, donc c'est comme ça qu'il faut l'utiliser chez toi.
 
Quand tu dis "ça passe pas", ça te fait quoi ?
fichiersrc.txt n'est pas vide ? Tu as les droits de lecture sur le fichier, les droits d'écriture sur le répertoire ?


 
 
non ca me dit
"option inconnue -55"  
Voulez-vous voir les options?

n°1122980
Elmoricq
Modérateur
Posté le 17-06-2005 à 11:55:43  profilanswer
 

Je voulais savoir ce que ça faisait quand tu écrivais :

tail fichierscr.txt 55 >fichierdest.txt


 
Rien du tout ? Pas d'erreur ?
Fichier source non vide ? Droit d'écriture ou de lecture, etc.

n°1122981
ironhead
Posté le 17-06-2005 à 11:56:04  profilanswer
 

ironhead a écrit :

non ca me dit
"option inconnue -55"  
Voulez-vous voir les options?


 
 
et j'ai bien tous les droits sur mes fichiers.
si le fichier destination n'existe pas , il me le cree.

n°1123042
piouPiouM
insomniak
Posté le 17-06-2005 à 12:45:14  profilanswer
 

tail -n 55 fichierscr.txt >fichierdest.txt


peut être ?
 
edit :
man tail sur FreeBSD :
-n number
             The location is number lines


Message édité par piouPiouM le 17-06-2005 à 12:46:27

---------------
o(^_^o) Gimp4you : tutoriels pour Gimp 2 | Galerie (o^_^)o
n°1123109
ironhead
Posté le 17-06-2005 à 14:07:26  profilanswer
 

piouPiouM a écrit :

tail -n 55 fichierscr.txt >fichierdest.txt


peut être ?
 
edit :
man tail sur FreeBSD :
-n number
             The location is number lines


 
desole mais je suis sous windows   :sweat:

n°1123115
Elmoricq
Modérateur
Posté le 17-06-2005 à 14:12:49  profilanswer
 

piouPiouM a écrit :


man tail sur FreeBSD :
-n number
             The location is number lines


 
 
Oui, ça dépend des distribs  :sweat:  
Sur Solaris, -n <nombre> et -<nombre> sont autorisés.
 
 
Quant à Windows, euuuh. De base, y a pas tail sous Windows. Ni man.
Donc tu as soit un truc type cygwin, soit je sais pas. Quoiqu'il en soit, si je m'en réfère à ce que tu as écris :
 

Citation :

Quand je regarde le man, il me dit tail <fichiersrc> <nb de ligne>
 
et quand je tape ta ligne de commande, ca passe pas.


 
Et ma question est : par "ça passe pas", qu'est-ce que tu entends exactement ?
(en utilisant cette syntaxe : tail fichiersrc.txt 55 > fichierdest.txt )

n°1123121
ironhead
Posté le 17-06-2005 à 14:17:11  profilanswer
 

Elmoricq a écrit :

Oui, ça dépend des distribs  :sweat:  
Sur Solaris, -n <nombre> et -<nombre> sont autorisés.
 
 
Quant à Windows, euuuh. De base, y a pas tail sous Windows. Ni man.
Donc tu as soit un truc type cygwin, soit je sais pas. Quoiqu'il en soit, si je m'en réfère à ce que tu as écris :
 

Citation :

Quand je regarde le man, il me dit tail <fichiersrc> <nb de ligne>
 
et quand je tape ta ligne de commande, ca passe pas.


 
Et ma question est : par "ça passe pas", qu'est-ce que tu entends exactement ?
(en utilisant cette syntaxe : tail fichiersrc.txt 55 > fichierdest.txt )


 
 
ca me dit
"option inconnue -55"  
Voulez-vous voir les options?

n°1123122
piouPiouM
insomniak
Posté le 17-06-2005 à 14:17:38  profilanswer
 

Oups [:joce]
 
edit : http://malektips.com/xp_dos_0001.html


Message édité par piouPiouM le 17-06-2005 à 14:18:22

---------------
o(^_^o) Gimp4you : tutoriels pour Gimp 2 | Galerie (o^_^)o
n°1123126
ironhead
Posté le 17-06-2005 à 14:18:14  profilanswer
 

Elmoricq a écrit :

Oui, ça dépend des distribs  :sweat:  
Sur Solaris, -n <nombre> et -<nombre> sont autorisés.
 
 
Quant à Windows, euuuh. De base, y a pas tail sous Windows. Ni man.
Donc tu as soit un truc type cygwin, soit je sais pas. Quoiqu'il en soit, si je m'en réfère à ce que tu as écris :
 

Citation :

Quand je regarde le man, il me dit tail <fichiersrc> <nb de ligne>
 
et quand je tape ta ligne de commande, ca passe pas.


 
Et ma question est : par "ça passe pas", qu'est-ce que tu entends exactement ?
(en utilisant cette syntaxe : tail fichiersrc.txt 55 > fichierdest.txt )


 
 
oups desole j'ai pas repondu a la bonne question.
en fait quand le fichier destination n'existe pas, il en crée un, mais vide, et quand il existe deja, il reste vide

n°1123131
ironhead
Posté le 17-06-2005 à 14:20:53  profilanswer
 

non il y a un logiciel que j'ai téléchargé et qui s'appelle Tail.

n°1123132
Elmoricq
Modérateur
Posté le 17-06-2005 à 14:21:26  profilanswer
 

ironhead a écrit :

oups desole j'ai pas repondu a la bonne question.
en fait quand le fichier destination n'existe pas, il en crée un, mais vide, et quand il existe deja, il reste vide


 
Il y a quelque chose dans "fichierscr.txt" ?
Tu as les droits en lecture ?  
Tu es dans le bon répertoire ?
 
Tu ne te serais pas trompé, après lecture attentive de tes réponses, entre "fichierscr.txt" et "fichiersrc.txt" ?

n°1123138
Elmoricq
Modérateur
Posté le 17-06-2005 à 14:27:07  profilanswer
 

ironhead a écrit :

non il y a un logiciel que j'ai téléchargé et qui s'appelle Tail.


 
Tu l'as récupéré où ?

n°1123140
piouPiouM
insomniak
Posté le 17-06-2005 à 14:27:49  profilanswer
 


Est ce celui-ci ?


---------------
o(^_^o) Gimp4you : tutoriels pour Gimp 2 | Galerie (o^_^)o
n°1123217
ironhead
Posté le 17-06-2005 à 15:03:36  profilanswer
 
n°1123225
Elmoricq
Modérateur
Posté le 17-06-2005 à 15:05:20  profilanswer
 

Citation :

Exemple : TAIL *.htm 10 > zz.tmp


 
Donc il s'agit bien d'un problème sur ton fichier source, soit tu t'es trompé dans le nom, soit il est vide, soit tu n'as pas les droits de lecture dessus.

n°1123513
matafan
Posté le 17-06-2005 à 17:16:09  profilanswer
 

Le grep de GNU a une option -A (ou --after-context) qui permet d'afficher un certain nombre de lignes apres une ligne qui match. Donc tu peux faire un truc du genre grep -A 4 "Deleting the following client" <file>.

mood
Publicité
Posté le   profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Shell/Batch

  Récupération de x fois 4 lignes dans un fichier log

 

Sujets relatifs
Probleme avec recuperation de Fichier ZIPactivation d'un fichier
afficher le contenu d'un fichier sur un listbox ou messageboxRécupération données Mysql vers Mysql
traitement fichier ZIPpour ouvrir un fichier
[RESOLU]Comment Streamer un fichier WMV ?Lire un fichier Midi sous Linux
inserée plusieurs son a la fois 
Plus de sujets relatifs à : Récupération de x fois 4 lignes dans un fichier log


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR