Lecture d'un fichier et conversion date Perl
Résolu/Fermé
bisbis1985
Messages postés
52
Date d'inscription
lundi 11 août 2008
Statut
Membre
Dernière intervention
13 juin 2012
-
21 août 2010 à 01:34
dubcek Messages postés 18783 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 22 avril 2025 - 23 août 2010 à 09:33
dubcek Messages postés 18783 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 22 avril 2025 - 23 août 2010 à 09:33
Bonjour,
Je suis un débutant en Perl , J'aimerai lire un fichier de format Nombre Date Nombre et convertir la date en seconde
Exemple d'entete :
23446663 2010-08-20 23:34:23 9899292
Merci de votre aide
Je suis un débutant en Perl , J'aimerai lire un fichier de format Nombre Date Nombre et convertir la date en seconde
Exemple d'entete :
23446663 2010-08-20 23:34:23 9899292
Merci de votre aide
A voir également:
- Lecture d'un fichier et conversion date Perl
- Comment ouvrir un fichier epub ? - Guide
- Comment réduire la taille d'un fichier - Guide
- Fichier rar - Guide
- Ouvrir un fichier .dat - Guide
- Ouvrir un fichier .bin - Guide
8 réponses
dubcek
Messages postés
18783
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
22 avril 2025
5 630
22 août 2010 à 16:10
22 août 2010 à 16:10
hello
$ export TZ=$(date +%Z) $ $ cat p2 #!/usr/bin/perl use Time::Piece ; open(my $in, "<", $ARGV[0]); while (<$in>) { chomp; ($c1,$c2,$c3,$c4)=split(/\s+/); my $t = Time::Piece->strptime($c2 . " " . $c3,"%Y-%m-%d %T"); print $t->strftime("%s\n"); } $ cat a2 23446663 2010-08-20 23:34:23 9899292 $ $ ./p2 a2 1282347263 $ $ # vérifions $ d="2010-08-20 23:34:23" ; date -d "$d" +%s 1282347263 $
bisbis1985
Messages postés
52
Date d'inscription
lundi 11 août 2008
Statut
Membre
Dernière intervention
13 juin 2012
3
22 août 2010 à 16:21
22 août 2010 à 16:21
Bonjour
Merci pour ta réponse mais je voudrais afficher la meme forme du fichier en remplaçant 2010-08-20 23:34:23 par 1282347263
Cad
23446663 1282347263 9899292
535366367 1282347267 0029329
Et Merci bcp
Merci pour ta réponse mais je voudrais afficher la meme forme du fichier en remplaçant 2010-08-20 23:34:23 par 1282347263
Cad
23446663 1282347263 9899292
535366367 1282347267 0029329
Et Merci bcp
dubcek
Messages postés
18783
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
22 avril 2025
5 630
Modifié par dubcek le 22/08/2010 à 16:34
Modifié par dubcek le 22/08/2010 à 16:34
alors on imprime $c1, le temps et $c4, remplacer
print $t->strftime("%s\n");par
printf "%s %s %s\n", $c1, $t->strftime("%s"), $c4;
bisbis1985
Messages postés
52
Date d'inscription
lundi 11 août 2008
Statut
Membre
Dernière intervention
13 juin 2012
3
22 août 2010 à 16:44
22 août 2010 à 16:44
Bonjour
Je l'execute sous windows , il me donne just les 2 champ 1 er et 3 eme
perl test.pl a2,
23446663 9899292
Je l'execute sous windows , il me donne just les 2 champ 1 er et 3 eme
perl test.pl a2,
23446663 9899292
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
dubcek
Messages postés
18783
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
22 avril 2025
5 630
22 août 2010 à 16:58
22 août 2010 à 16:58
je l'exécute sur Linux.
Il n'y a pas de message d'erreur ?
pour voir si il lit tous les champs imprimer
Il n'y a pas de message d'erreur ?
pour voir si il lit tous les champs imprimer
printf "%s %s %s %s\n", $c1, $c2, $c3, $c4 ;
bisbis1985
Messages postés
52
Date d'inscription
lundi 11 août 2008
Statut
Membre
Dernière intervention
13 juin 2012
3
22 août 2010 à 17:05
22 août 2010 à 17:05
Il lit tous les champs mais pr le résultat il n'affiche pas le 2 eme champs
bisbis1985
Messages postés
52
Date d'inscription
lundi 11 août 2008
Statut
Membre
Dernière intervention
13 juin 2012
3
22 août 2010 à 17:20
22 août 2010 à 17:20
Je pense que ce time:Piece n'existe pas sous Perl version windows nn !!
dubcek
Messages postés
18783
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
22 avril 2025
5 630
23 août 2010 à 09:33
23 août 2010 à 09:33
que répond cette commande
perl -e 'use POSIX qw(strftime); print strftime("%Y-%m-%d %H:%M:%S\n", localtime)'