Bonjour,
Dans un script, j'utilise gawk selon ce schéma :
Ce schéma marche bien.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 gawk -N -F ';' -v var1=1.0 ' { if CONDITION { printf("%12s", $1) printf(";") printf("%8s", $3) printf(";") #etc . . . printf ("\n") } } ' ftmp8a1.csv > ftmp8a2.csv
Quand la condition "CONDITION" n'est pas vérifiée, je souhaiterais créer, en plus, un fichier d'anomalie en .log reprenant certains champs.
Je n'y arrive pas !
J'ai complété le code précédent, mais je n'arrive pas à obtenir un code correct.
Code modifié avec "else" incorrect :
La redirection dans le "else" ne fonctionne pas.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 echo "TitreCol1;TitreCol2;TitreCol3;TitreCol4;TitreCol5" > f8a.csv gawk -N -F ';' -v var1=1.0 ' { if CONDITION { printf("%12s", $1) printf(";") printf("%8s", $3) printf(";") #etc . . . printf ("\n") } else { echo "$10;$2;$5;$9;var1" >> f8a.log } } ' ftmp8a1.csv > ftmp8a2.csv
Peut-on faire autrement ? ou Qu'est-ce qui cloche ?
Partager