Public feed #604263

Untitled

public text v1 · immutable
Raw Edit
·published 2007-07-05 12:20 UTC
rendered paste body
awk -v coef=1 -v annee=2006 '
{
# Test pour savoir si l'année est bisextile
bisex=0;
if ((annee==2000) || (annee==2004) || (annee==2008)) {
bisex=1; }
# On saute les 6 premières lignes du fichier
if (NR > 6 ) {
# En détermine quel mois le programme lit
mois = int((NR-7)/6)+1;
# On rajoute un 0 devant les nombre à 1 chiffre pour en avoir 2
if (mois < 10 ) {
nmois = "0" mois;
}
if (mois > 9 ) {
nmois = mois;
}

# Traitement du fichier :
# Les données sont réparties en 3 morceaux que l'on récupère :
# premier morceau :
if (NR - 7 - 6*int((NR - 7)/6) == 0 ) {
print "0"$1"/"nmois"/"annee " 00:00:00 " $2 * coef;
print "0"$4"/"nmois"/"annee " 00:00:00 " $5 * coef;
print "0"$7"/"nmois"/"annee " 00:00:00 " $8 * coef;
print "0"$10"/"nmois"/"annee " 00:00:00 " $11 * coef;
print "0"$13"/"nmois"/"annee " 00:00:00 " $14 * coef;
print "0"$16"/"nmois"/"annee " 00:00:00 " $17 * coef;
print "0"$19"/"nmois"/"annee " 00:00:00 " $20 * coef;
print "0"$22"/"nmois"/"annee " 00:00:00 " $23 * coef;
print "0"$25"/"nmois"/"annee " 00:00:00 " $26 * coef;
print $28"/"nmois"/"annee " 00:00:00 " $29 * coef;}
# deuxième morceau
if (NR - 7 - 6*int((NR - 7)/6) == 1 ) {
print $1"/"nmois"/"annee " 00:00:00 " $2 * coef;
print $4"/"nmois"/"annee " 00:00:00 " $5 * coef;
print $7"/"nmois"/"annee " 00:00:00 " $8 * coef;
print $10"/"nmois"/"annee " 00:00:00 " $11 * coef;
print $13"/"nmois"/"annee " 00:00:00 " $14 * coef;
print $16"/"nmois"/"annee " 00:00:00 " $17 * coef;
print $19"/"nmois"/"annee " 00:00:00 " $20 * coef;
print $22"/"nmois"/"annee " 00:00:00 " $23 * coef;
print $25"/"nmois"/"annee " 00:00:00 " $26 * coef;
print $28"/"nmois"/"annee " 00:00:00 " $29 * coef;}
# troisième morceau
if (NR - 7 - 6*int((NR - 7)/6) == 2 ) {
print $1"/"nmois"/"annee " 00:00:00 " $2 * coef;
print $4"/"nmois"/"annee " 00:00:00 " $5 * coef;
print $7"/"nmois"/"annee " 00:00:00 " $8 * coef;
print $10"/"nmois"/"annee " 00:00:00 " $11 * coef;
print $13"/"nmois"/"annee " 00:00:00 " $14 * coef;
print $16"/"nmois"/"annee " 00:00:00 " $17 * coef;
print $19"/"nmois"/"annee " 00:00:00 " $20 * coef;
print $22"/"nmois"/"annee " 00:00:00 " $23 * coef;
# Test pour savoir si on doit lire 28, 29, 30 ou 31 champs
if (mois == 2 && bisex == 1) {
print $25"/"nmois"/"annee " 00:00:00 " $26 * coef;
}
if (mois != 2 ) {
print $25"/"nmois"/"annee " 00:00:00 " $26 * coef;
print $28"/"nmois"/"annee " 00:00:00 " $29 * coef;
if ((mois == 1 ) || (mois == 3 ) || (mois == 5 ) || (mois == 7 ) || (mois == 8 ) || (mois == 10 ) || (mois == 12 )) {
print $31"/"nmois"/"annee " 00:00:00 " $32 * coef;}}}
}
}
'