Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Flux de donnees

4 réponses
Avatar
Filip Supera
Bonjour,

Je vais essayer de décrire ce que je veux faire en Perl sachant que je
suis un total débutant avec de bonnes notions de PHP. Je souhaite
migrer de PHP vers Perl ou au moins être capable d'utiliser les deux
selon mes besoins.

Mon but est de surveiller un fichier log et d'envoyer toutes les
nouvelles données qui arrivent dans ce fichier à une sub sous forme
d'argument.

Je pense (non testé) à quelquechose qui en PHP donnerait :

$int_OldLogSize = 0;
$fop = 0;

while(1){//forever

if(filesize("Monlog.log")!=$int_OldLogSize){
$fop = fopen("Monlog.log","r") or die("Could not open file Monlog.log");
fseek($fop,$int_OldLogSize);
while($NL = fgets($fop,1024)){
MySub($NL);
}
flcose("Monlog.log");
$int_OldLogSize = filesize("Monlog.log");
}
}


function MySub($str_Data){

//Do smthg with $str_Data
Echo $str_Data;

}


Cela a-t-il du sens ? Suis-je bien sûr de récupérer toutes les
nouvelles données ainsi ? Je suis sûr qu'il doit y avoir moyen d'être
plus concis.
Merci de me conseiller des pistes pour faire la même chose ou mieux en
Perl. Avec ça, je pense que je pourrai commencer à bidouiller et
progresser en Perl. Merci !

4 réponses

Avatar
Filip Supera
Filip Supera wrote:

$int_OldLogSize = 0;
$fop = 0;

while(1){//forever

if(filesize("Monlog.log")!=$int_OldLogSize){
$fop = fopen("Monlog.log","r") or die("Could not open file
Monlog.log");
fseek($fop,$int_OldLogSize);
while($NL = fgets($fop,1024)){
MySub($NL);
}
flcose("Monlog.log");
$int_OldLogSize = filesize("Monlog.log");
}


Un sleep(5) ici j'ai oublié.

Avatar
Jérémy JUST
On Fri, 29 Oct 2004 23:45:23 +0200
Filip Supera wrote:

Mon but est de surveiller un fichier log et d'envoyer toutes les
nouvelles données qui arrivent dans ce fichier à une sub sous forme
d'argument.


Tu devrais lire:

$ perldoc -q tail

qui te dit « How do I do a "tail -f" in perl? ».


Je pense (non testé) à quelquechose qui en PHP donnerait :


À première vue, ça m'a l'air bien long... et ça me surprend que tu
ouvres et fermes sans arrêt ton fichier...


Cela a-t-il du sens ?


Ça ressemble à ça, du PHP? On dirait du C (fopen, fgets...).

--
Jérémy JUST

Avatar
Filip Supera
Jérémy JUST wrote:
On Fri, 29 Oct 2004 23:45:23 +0200
Filip Supera wrote:


Mon but est de surveiller un fichier log et d'envoyer toutes les
nouvelles données qui arrivent dans ce fichier à une sub sous forme
d'argument.



Tu devrais lire:

$ perldoc -q tail

qui te dit « How do I do a "tail -f" in perl? ».


Merci !




Je pense (non testé) à quelquechose qui en PHP donnerait :



À première vue, ça m'a l'air bien long... et ça me surprend que tu
ouvres et fermes sans arrêt ton fichier...


Oui, je vais étudier ça.




Cela a-t-il du sens ?



Ça ressemble à ça, du PHP? On dirait du C (fopen, fgets...).



Il y a des points communs, sans doute. Je connais peu le C.


Avatar
Filip Supera
Jérémy JUST wrote:
On Fri, 29 Oct 2004 23:45:23 +0200
Filip Supera wrote:


Mon but est de surveiller un fichier log et d'envoyer toutes les
nouvelles données qui arrivent dans ce fichier à une sub sous forme
d'argument.



Tu devrais lire:

$ perldoc -q tail

qui te dit « How do I do a "tail -f" in perl? ».


Merci !




Je pense (non testé) à quelquechose qui en PHP donnerait :



À première vue, ça m'a l'air bien long... et ça me surprend que tu
ouvres et fermes sans arrêt ton fichier...


Oui, je vais étudier ça.




Cela a-t-il du sens ?



Ça ressemble à ça, du PHP? On dirait du C (fopen, fgets...).



Il y a des points communs, sans doute. Je connais peu le C.