Boucle en bash avec creation de variable a la volé impossible a recuperer
Bonjour,
je fait une creation de variable a la volé pour differencier toute mes version de la boucle et les reutilisé plus tard ..
un expemple parle mieux .. :
Code:
1 2 3 4 5 6 7 8 9 10 11 12
|
export NB_CERT=0
while read i
do
export CERT_$NB_CERT="$i"
NB_CERT=$((NB_CERT+1))
done < CERT.tmp
while [[ $NB_CERT -gt 0 ]]
do
echo $"CERT_$NB_CERT"
done |
dans mon fichier CERT.tmp j'ai des noms :
tazcox
test1
test2
l'idee c'est de d'incrementé ma boucle avec le $NB_CERT et ensuite de lire toute les occurences en decrementant $NB_CERT
mais le HIC c'est d'arrivé a afficher ma variable "CERT_0" alors que le echo ne m'affiche que "_0"
mes variables sont bien setté mais comment les liree :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
|
bash-4.1$ while read i
> do
> export CERT_$NB_CERT="$i"
> NB_CERT=$((NB_CERT+1))
> done < CERT.tmp
bash-4.1$
bash-4.1$ env | grep CERT
NB_CERT=2
CERT_1=test1
CERT_0=tazcox
bash-4.1$NB_CERT=1
bash-4.1$ echo $"CERT_$NB_CERT"
CERT_1 |
voila je n'arrive pas a afficher le contenue de CERT_1 avez vous une idée ?
Merci