Bonjour;

Voici une procedure Shell :
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
21
22
 
# UpcaseColumnString(fic_entree, col :number)
# On met en majuscule la valeur des champs de la colonne col placée en parametre
# Les champs sont seulement des strings
#Champs 2 Nom , 9 Domaine, 11 à 20 Resp Gestionnaire
#
UpcaseColumnString()
{
        awk -v col="$2" -F ';' '
                NF>0 {
                        if ( $col==8 && match($col,/^$/) )
                        {
                                gsub(//,"PDF",$col); print $0
                        }
                        if ( match($col,/^.*$/) )
                        {
                                $col=toupper($col);
                                gsub(/ /,";",$0); print $0
                        }
                }' $1
}
#
Mais le fait est que; le champ 8 s'il est vide ne prend pas la valeur "PDF" !
Ou est mon erreur ?

Merci de votre aide et savoir