#1 Le 24/12/2007, à 14:11
- titienne
[Résolu]manipulation d'un fichier txt
bonjour a tous
j'ai un fichier txt (log) qui fait environ 1.1 Go et je doit tout scruté. mon probleme est qu'il y a 90% des ligne qui sont inutile et il on tous un un mot ou une adresse ip identique ya t-il un logiciel ou un scripte qui me permet de suprimé toute c'est ligne en fonction des mot qui sont dedan ??
Dernière modification par titienne (Le 30/01/2008, à 04:31)
Hors ligne
#2 Le 24/12/2007, à 15:26
- HymnToLife
Re : [Résolu]manipulation d'un fichier txt
sed /foo/d monfichier
retournera le contenu du ficher en omettant toutes les lignes qui contiennent le mot « foo ».
- Rodrigue, as-tu du cœur ?
- Non, mais j'ai du pique !
Hors ligne
#3 Le 24/12/2007, à 18:46
- titienne
Re : [Résolu]manipulation d'un fichier txt
merci mais j'ai pas le temps de le lire !!
et peut-il avoir la posibilité de dir "foo" ou ".com" ou ... ???
Hors ligne
#4 Le 24/12/2007, à 19:58
- Luffy49122
Re : [Résolu]manipulation d'un fichier txt
sed -n '/foo|.com/p' monfichier
affichera toute les lignes contenant soit foo soit .com
#5 Le 24/12/2007, à 21:54
- titienne
Re : [Résolu]manipulation d'un fichier txt
encor merci mais c'est l'inverce que je veut : n'afiche pas toute les ligne contenant foo ou .com !!
Hors ligne
#6 Le 25/12/2007, à 00:44
- Alain.g
Re : [Résolu]manipulation d'un fichier txt
sed '/foo\|\.com/d' monfichier
pour le ou, c'est \| et le "." doit être précédé d'un \ pour ne pas être interprété comme un métacaractère
Xubuntu Karmic !
Hors ligne
#7 Le 25/12/2007, à 03:26
- titienne
Re : [Résolu]manipulation d'un fichier txt
pour le coup je l'est ecri dans un fichieret ca donne ca :
sed '/foo\|\.com/d' monfichier >> log.txt
super merci c'est genial por le coup monfichier est passé de 1.1 Go à 13 Ko c'est moin fatigan a lire !!
Hors ligne
#8 Le 22/01/2008, à 15:38
- titienne
Re : [Résolu]manipulation d'un fichier txt
bonjour a tous,
je relance le sujet parce que dans mon fichier log chaque ligne commence par un timestamp (ex: 1201009590.980) en faite c'est sur tout la premiere serie de chifre qui m'intéresse (ex: 1201009590).
savez-vous comment le remplacé par la date et l'heure ??
Hors ligne
#9 Le 22/01/2008, à 15:53
- Aurel34
Re : [Résolu]manipulation d'un fichier txt
savez-vous comment le remplacé par la date et l'heure ??
par quelle date/heure veux-tu remplacer ta chaîne ? la date courante ? une date encodée dans la chaîne ?
#10 Le 22/01/2008, à 17:53
- titienne
Re : [Résolu]manipulation d'un fichier txt
c'est un timestamp (nombre de seconde écoulé depuis le 1er janvier 1970) comment le remplacé par une date et un heure dans chaque ligne (chaque ligne commence par le timestamp)
Hors ligne
#11 Le 22/01/2008, à 20:40
- abetsic
Re : [Résolu]manipulation d'un fichier txt
Essaye de regarder du coté du programme "date"
Hors ligne
#12 Le 22/01/2008, à 20:55
- Alain.g
Re : [Résolu]manipulation d'un fichier txt
avec date :
date -d @1201009590
renvoie : mardi 22 janvier 2008, 14:46:30 (UTC+0100)
sinon :
echo 1201009590 | awk '{print strftime("%c",$1)}'
Trouvé sur cette page
Dernière modification par Alain.g (Le 22/01/2008, à 20:55)
Xubuntu Karmic !
Hors ligne
#13 Le 22/01/2008, à 23:06
- titienne
Re : [Résolu]manipulation d'un fichier txt
oui merci mais chaque ligne a un timestamp différent ce que je voudré c'est la date et l'heure qui replace le timestamp de chaque ligne.
chaque ligne comence par un timestamp ex :
1201039313.585 3086 10.16.34.4 TCP_MISS/200 30965 GET http://forum.ubuntu-fr.org/viewforum.php? - DIRECT/213.95.41.13 text/html
serai remplacé par :
Tue Jan 22 23:01:53 CET 2008 3086 10.16.34.4 TCP_MISS/200 30965 GET http://forum.ubuntu-fr.org/viewforum.php? - DIRECT/213.95.41.13 text/html
merci de m'aidez.
Dernière modification par titienne (Le 22/01/2008, à 23:08)
Hors ligne
#14 Le 22/01/2008, à 23:32
- abetsic
Re : [Résolu]manipulation d'un fichier txt
awk '{gsub($1,strftime("%c ",$1),$0); print $0}'
gsub permet de faire la substitution du premier argument par le deuxième dans la chaine définie par le 3ème argument. Puis on affiche la ligne qui vient d'être modifiée avec le print.
Hors ligne
#15 Le 22/01/2008, à 23:33
- freebird
Re : [Résolu]manipulation d'un fichier txt
essaye ça :
awk ' { $1=strftime("%c",$1); print }' log.txt
Hors ligne
#16 Le 25/01/2008, à 04:50
- titienne
Re : [Résolu]manipulation d'un fichier txt
bonjour,
abetsic, freebird,
voici ce que me retoune ce que vous m'avais donné :
awk: line 2: function strftime never defined
Hors ligne
#17 Le 25/01/2008, à 10:54
- Alain.g
Re : [Résolu]manipulation d'un fichier txt
installe gawk, ça ne fonctionne pas avec mawk (tu peux même remplacer awk par gawk dans la ligne)
Xubuntu Karmic !
Hors ligne
#18 Le 30/01/2008, à 04:31
- titienne
Re : [Résolu]manipulation d'un fichier txt
super ça fonctionne, Merci Alain.g !!
désolé pour le temps de réponse mais je ne pouvais faire autrement !!
encore merci a tous !!
Hors ligne