begin process at 2012 05 30 20:23:23
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

Divers

 > 

Divers

 > 

Modifier un fichier .log en profondeur


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Modifier un fichier .log en profondeur

jeudi 11 janvier 2007 à 18:53:21 | Modifier un fichier .log en profondeur

Equilibrius

Bonjour a tous,

voilà j'ai un petit problemme, j'ai un fichier .log qui fait plus de 2.5Mo (avec en gros 40'000 lignes) il contien les log de plusieur "serveur" et j'aimerai le modifier, mais pas qu'un peu, le modifier a "grande echelle", c'est a dire :

je voudrai remplacer une suite de caractére (1) pas une autre suite (2), et comme la premiére suite de caractére(1) ce répéte plus de 1800 fois dans le log, je vai pas faire sa a la main ^^

Donc j'ai eu l'idée de créer un programme, j'ai quelques bases, en batch, php, js,  et je ne sais vraiment pas quoi commencer ... Donc si quelqu'un a une idée, vraiment, Merci d'avance

Un petit Exemple :

/*--------------------[Début d'un bou du fichier en question]----------------*/
K;0;4;a
108:00 D;0;1;a]=- ^
1il___;77_;none
108:K;0;1;a]=-^1per
108:06 Ko;^9A^;0;5;o-_naer
108:08 saL
108:15 K;0;4;;C^7]=-^K;0;1
LE_;_lo;^9A^w
108:17 K;0;3;
es;-
^4^9in- ^;0;5;;
/*--------------------[Fin d'un bou du fichier en question]----------------*/

et dans ce bou de fichier j'aimerai ramplacer les  "o;^9A^" par des "z4-3zé^1'f"

Quelques présisions :
Les caractéres a remplacer sont toujour placer en début de ligne, et ne sont jamais coupé
jeudi 11 janvier 2007 à 19:08:33 | Re : Modifier un fichier .log en profondeur

cedriclomb

Réponse acceptée !
Salut

C'est simple :

a) Tu fais une sauvegarde de .log on sait jamais :)

b ) Ensuite si tu as dreamweaver ou autre editeur on a une fonction Chercher remplacer en fesant CTRL+F :D

Sinon En php  ca donne :
$lecture=file_get_contents ( 'URL_FICHIER');
$replace=str_replace("o;^9A^","z4-3zé^1'f",$lecture);
$fp=fopen( 'URL_FICHIER','w');
fputs($fp,$replace);
fclose($fp);

c) tu verifies est normalement c'est bon !
jeudi 11 janvier 2007 à 19:10:19 | Re : Modifier un fichier .log en profondeur

cedriclomb

PS : Juste un truc j'espere quevu la taille du fichier PHP ne va pas depasser les 30 secondes d'execution autoriser !! Sinon faudra changer de langage !! Exemple PERL avec un script cgi !!
jeudi 11 janvier 2007 à 20:30:16 | Re : Modifier un fichier .log en profondeur

Flachy Joe

Pour que le script ne se bloque pas en cours de route :

set_time_limit(3000); //Ou plus si besoin
ignore_user_abort(true);

Flachy Joe
jeudi 11 janvier 2007 à 20:49:54 | Re : Modifier un fichier .log en profondeur

Equilibrius

Salut,

CTRL+F mdrr je connais, mais bon comme j'ai di plus haut le bou ce répéte plus de 1500 foi , sa me prendrai trop de temp ^^

Ensuite, pour le temp d'exécution du script, je vai surment le fractionner en plusieurs bout (cette foi a la main ^^)

Voilà, Merci pour vos réponce, je vais tester le script ci-dessus, et je repost la solution en totalité
jeudi 11 janvier 2007 à 21:11:14 | Re : Modifier un fichier .log en profondeur

Equilibrius

Voilà le script en détail:

<?php
$lecture=file_get_contents ( './Le nom du fichier');
$replace=str_replace("Chose a ramplacer","Chose qui ramplace la chose a ramplacer",$lecture);
$fp=fopen( './Le nom du fichier','w');
fputs($fp,$replace);
fclose($fp);
?>

Franchement, ce bou de code ma vraiment blefé !!
hyper rapide, la page a "chargé" autan de temp que quand je vais sur google.fr, c'est trop enorme mdrr chui sur le cul

Vraiment merci a cedriclomb et a Flachy Joe (même si je n'ai pas eu besoin de son bou de code, mias il sera surment utile dans le cas ou le fichier est vraiment enorme (plusieur 10énes des Mo a mon avis))

Et voilà encore toute la puissance du PHP démontré dans cet example !

Merci encore

Ps: c'est la premiére foi que je poste ici, et franchement phpcs.com est encore plus rapide que le site du zero pour les réponces, et surtout leurs qualités

vendredi 12 janvier 2007 à 00:25:59 | Re : Modifier un fichier .log en profondeur

cedriclomb

Dis voir Flashy Joe est ce que set_time_limit(3000); //Ou plus si besoin ignore_user_abort(true); me permettrait de remplace un script PERL pour l'upload des gros fichier 7Mo et plus ?? CTRL+F mdrr je connais, mais bon comme j'ai di plus haut le bou ce répéte plus de 1500 foi , sa me prendrai trop de temp ^^ BAh perso mois sur Dream J'ai un remplcé tout aussi rapide que php sauf que j'ai pas de ligne de code a tapper !! MAis bon ce code est utile pour des tas de trucs apres si tu te fais une zone d'admin !
vendredi 12 janvier 2007 à 08:32:12 | Re : Modifier un fichier .log en profondeur

syndrael

Euh.. Pour ma part sur des traitements comme ça, j'utilise sed en ligne de commande exécutée par PHP.. Y'a po plus rapide..idem pour grep d'ailleurs..
S.



Cette discussion est classée dans : fichier, log, modifier, suite, bou


Répondre à ce message

Sujets en rapport avec ce message

Upload de fichier.. AU SECOURS!! SVP!!! [ par UnKnoW ] Bonjour!Avant que vous lisiez ceci sachez que j'apprécie ÉNORMÉMENT votre aide que j'en ai extrêmement de besoin!! Merci du fond du coeur!Mon problème Modifier une ligne d'un fichier [ par twiems ] Twiems:PEn effet je souhaite modifier la dernière d'un fichier html (pareil que fichier txt) mais malheuresement je n'y arrive pas.Ainsi je voudrais q Modifier un fichier OU SUGGESTIONS [ par DeepXtaZy ] Bonjour,Je suis en stage et je voudrais faire une page pour que mon patron puisse diffuser facilement et meme tres facilement des notes de service.Je Modifier un fichier OU SUGGESTIONS [ par DeepXtaZy ] Bonjour,Je suis en stage et je voudrais faire une page pour que mon patron puisse diffuser facilement et meme tres facilement des notes de service.Je modifier une ligne dans un fichier texte S.O.S [ par MeTh ] Bonjour,j'ai besoin de modifier une ligne dans un fichier texte plus précisément .htx format spécifique pour un programme qui est en fait une page .ht Modifier un fichier toute les 24 heures [ par KiWin ] Bonjour,J'aimerais savoir quel code utiliser pour modifier un fichier toutes les 24 heures. Ce fichier doit être modifié de sorte à ajouter à la lign SVP, effacer et modifier un fichier [ par sema ] hello,je vous explique mon probleme:voici les trois formulaires que j'ai fais:Pour ajouter Date de mise en ligne</T extraction de données par php [ par g_marvin ] J'ai donc réussi à lire un fichier texte (par exemple tati.txt) à partir d'une page php de cette façon : <FONT si fichier, modifier une partie [ par netwebzone ] Bonjour,J'aimerais savoir comment modifier une partie d'un fichier, parce que le début je ne le change pas, ce n'est que la fin que j'aimerais changer Affichage de graphique [ par nbenoist ] sur RedHat 7.2 J'ai une page php qui lit un fichier de log. Ma page php me affiche 2 camenbert suivant les informations du fichier log. J'ai mis les


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,468 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales