Transformation de date sous linux
Castor
Messages postés
17881
Date d'inscription
Statut
Modérateur
Dernière intervention
-
Castor Messages postés 17881 Date d'inscription Statut Modérateur Dernière intervention -
Castor Messages postés 17881 Date d'inscription Statut Modérateur Dernière intervention -
Salutatous....
mon probleme est le suivant... g des logs a nalyser, et les dates me sortent sous le format GNU, cad en decompte de secondes depuis le 01/01/1970 à 00h00
est ce que quelqu'un aurait un soft ou une ligne de commande permettant de transformer par exemple 1033570316 en 02/10/2002 16:51:56 ?????
merchi d'avance ;)
.O
(_)__... Castor
mon probleme est le suivant... g des logs a nalyser, et les dates me sortent sous le format GNU, cad en decompte de secondes depuis le 01/01/1970 à 00h00
est ce que quelqu'un aurait un soft ou une ligne de commande permettant de transformer par exemple 1033570316 en 02/10/2002 16:51:56 ?????
merchi d'avance ;)
.O
(_)__... Castor
A voir également:
- Transformation de date sous linux
- Linux reader - Télécharger - Stockage
- R-linux - Télécharger - Sauvegarde
- Backtrack linux - Télécharger - Sécurité
- Airpods 3 date de sortie - Guide
- Jm date avis - Forum Consommation & Internet
11 réponses
Ptain t es dans la merde....
Bon regarde quand meme si le gars qui fait les logs ne peut pas changer ce format.
sinon avec la comande date +%s et la crontab tu peux peut etre faire un script qui ne soit pas trop penalisant ?
m enfin bon..
good luck
Bon regarde quand meme si le gars qui fait les logs ne peut pas changer ce format.
sinon avec la comande date +%s et la crontab tu peux peut etre faire un script qui ne soit pas trop penalisant ?
m enfin bon..
good luck
bah les logs c des logs "natifs" de squid
et meme si maintenant on les modifie pour ca, il reste qd meme mes 300 000 lignes de logs deja existantes a modifier :D
vi c pas bete le perl... tu penses qu'ily a une commande qui transforme tout ca?? ou fo se taper ca a la barbare :D
en tout cas merci sysdamin :p
.O
(_)__... Castor
et meme si maintenant on les modifie pour ca, il reste qd meme mes 300 000 lignes de logs deja existantes a modifier :D
vi c pas bete le perl... tu penses qu'ily a une commande qui transforme tout ca?? ou fo se taper ca a la barbare :D
en tout cas merci sysdamin :p
.O
(_)__... Castor
un petit cout de system call gettimeofday et c'est fait.
En perl tu utilises les services time et localtime
En vrac, je te file du code que j'ai pondu pour ajouter ou soustraire un nombre J de jours à la date courante, sous windows 98 avec des petits offsets pour corriger les différences avec unix. Si toi tu cueille un chiffre, tu pars de là au lieu de time qui donne le chiffre du temps présent...
if ($J =~ /^[-]*[0-9]+$/) {
($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) =
localtime(time + 3600*24*$J);
$mon++;
$When=&Str_date();
};
sub Str_date {
#----------------
local($Year);
if ($year<100) { $Year=($year>=70)?1900+$year:2000+$year;}
elsif ($year<1900) {$Year=$year+1900;} # Emm v 2.6
else {$Year=$year;};
$_=sprintf ("%s%d/%s%d/%4s",
($mday<10)?"0":"",$mday, ($mon<10)?"0":"",$mon,$Year);
if ($Year<1996 || $Year >2070 || $mon>12 || $mday >31) {
die ("Le $_ ! Petit farceur, va !\n");
};
$_;
}
:,§_ ç _
(@)=(@)
En perl tu utilises les services time et localtime
En vrac, je te file du code que j'ai pondu pour ajouter ou soustraire un nombre J de jours à la date courante, sous windows 98 avec des petits offsets pour corriger les différences avec unix. Si toi tu cueille un chiffre, tu pars de là au lieu de time qui donne le chiffre du temps présent...
if ($J =~ /^[-]*[0-9]+$/) {
($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) =
localtime(time + 3600*24*$J);
$mon++;
$When=&Str_date();
};
sub Str_date {
#----------------
local($Year);
if ($year<100) { $Year=($year>=70)?1900+$year:2000+$year;}
elsif ($year<1900) {$Year=$year+1900;} # Emm v 2.6
else {$Year=$year;};
$_=sprintf ("%s%d/%s%d/%4s",
($mday<10)?"0":"",$mday, ($mon<10)?"0":"",$mon,$Year);
if ($Year<1996 || $Year >2070 || $mon>12 || $mday >31) {
die ("Le $_ ! Petit farceur, va !\n");
};
$_;
}
:,§_ ç _
(@)=(@)
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
En Python... tu cr?es la proc?dure idoine....
#! /usr/bin/python
import time
t = 1033570316
try:
d = time.gmtime(t)
print "%02d/%02d/%d %02d:%02d:%02d" % (d[2], d[1], d[0], d[3], d[4], d[5])
except(e):
pass
The software said "Requires Windows98, Win2000, or better
So I installed Unix.
#! /usr/bin/python
import time
t = 1033570316
try:
d = time.gmtime(t)
print "%02d/%02d/%d %02d:%02d:%02d" % (d[2], d[1], d[0], d[3], d[4], d[5])
except(e):
pass
The software said "Requires Windows98, Win2000, or better
So I installed Unix.
Il faut ?videmment placer les tabulations correctes...
En Python... tu cr?es la proc?dure idoine....
#! /usr/bin/python
import time
t = 1033570316
try:
___d = time.gmtime(t)
___print "%02d/%02d/%d %02d:%02d:%02d" % (d[2], d[1], d[0], d[3], d[4], d[5])
except(e):
___pass
The software said "Requires Windows98, Win2000, or better
So I installed Unix.
En Python... tu cr?es la proc?dure idoine....
#! /usr/bin/python
import time
t = 1033570316
try:
___d = time.gmtime(t)
___print "%02d/%02d/%d %02d:%02d:%02d" % (d[2], d[1], d[0], d[3], d[4], d[5])
except(e):
___pass
The software said "Requires Windows98, Win2000, or better
So I installed Unix.
ok merci les gars.. je tenterai ca demain....
(sous perl pk g dja tout le script en perl) mais merci aussi jisiv, g archive ca :p
oui M&M's en effet je "pars" du chiffre..
.O
(_)__... Castor
(sous perl pk g dja tout le script en perl) mais merci aussi jisiv, g archive ca :p
oui M&M's en effet je "pars" du chiffre..
.O
(_)__... Castor
Ha Castor, tu vois que j'ai codé cela à la mise-t-en-flute avec des variables year, mon, mday globales alors que j'aurais du créer un joli array à passr par référence à la fonction, tu peux fignoler... En tout cas, mon truc tourne en opération tous les jours.
:,§_ ç _
(@)=(@)
:,§_ ç _
(@)=(@)