Bonjour,

Mon script fonctionne correctement, mais j'aimerais directement utiliser les variables plutôt que de créer un sous-shell. Voici un extrait du code:
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
while read line
do
    if [ $(echo ${line:2:1} | grep "-") ]
    then
        oldDate=${newDate}
        newDate=${line##* }
        echo "${timeChar}${newDate}"
    elif [ $(echo ${line:0:1} | grep [0-9]) ]
    then
        echo "${veIdChar}${line%%:*}"
        echo ${line##*:}
    else
        echo ${line}
    fi
done < ${file}
Le if regarde si le 3e caractère de ${line} est '-', le elif regarde si le premier caractère est un chiffre. J'ai bien essayé quelque chose comme: if [ ${line:0:1} = "-" ], mais j'obtiens l'erreur: line 11: [: =: unary operator expected.

Merci d'avance pour tout indice qui me fera avancer dans ma quête du savoir