Bonjour,
Je récupère des données provenant de plusieurs fichiers ayant tous la même forme :
de la façon suivante :
Code : Sélectionner tout - Visualiser dans une fenêtre à part toto-1.6-1.6.out toto-1.6-1.7.out .......toto-2.5-2.5.out
En quelque sorte, j'ai un tableau à deux dimensions.
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 for (( i=0 ; $i <= 15 ; i++ )) do d1=$(echo "1.6 + $i * 0.1" | bc ) for (( j=0 ; j <= 15 ; j++ )) do d2=$(echo "1.6 + $j * 0.1" | bc ) if [ -f toto-$d1-$d2.out* ] ;then energy[$i_$j]=$(grep 'tutt' toto-$d1-$d2.out* | awk 'NR = 1 {print $5}' ) #recuperation de la valeur de l energie energy[$i_$j]=$( echo "( $Somme_ref - ${energy[$i_$j]})* 627.509 " |bc ) # calcul de l energie en kcal #echo "${energy[$i_$j]}" else energy[$i_$j]=$(echo "--" ) #echo "${energy[$i_$j]}" fi done done
Ce que je voudrais faire c'est écrire le résultat de la façon suivante :
valeur de
Comme je veux pas tout changer si j'ai un tableau de dimension différentes, je veux éviter un
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 1.6_1.6 1.6_1.7 .....1.6_2.5 1.7_1.6 1.7_1.7 ..... ...... 2.5_1.6
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 echo "${energy[1_1]} ${energy[1_2]} ${energy[1_3]} ${energy[1_4]} " >> tutu echo "${energy[2_1]} ${energy[2_2]} ${energy[2_3]} ${energy[2_4]} " >> tutu echo "${energy[3_1]} ${energy[3_2]} ${energy[3_3]} ${energy[3_4]} " >> tutu
J'avais pensé à
Mais ça va me produire une suite de ligne.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 for (( i=0 ; $i <= 15 ; i++ )) do for (( j=0 ; j <= 15 ; j++ )) do echo "${energy[$i_$j]}" >> tutu done done
Alors comment faire ?
Faut il produire des colonnes que l'on place les unes à côté des autres si oui comment faire ? Ou faut il produire une suite de ligne et là aussi comment faire ?
Partager