Shell et tableau

Bonjour tout le monde !

J’ai un souci d’incompréhension sur un script et j’aurais besoin de votre aide s’il vous plait.

But : Avoir un tableau et afficher les informations plusieurs fois à la suite. Cependant, le résultat n’est pas du tout celui attendu. Je l’ai également fait en perl et je n’ai eu aucun souci. J’ai du oublier quelque chose.

Voici le script :

[code]#!/bin/bash

clear

array=(‘1’ ‘2’ ‘3’ ‘4’ ‘5’);

echo "boucle for1"
echo "Affichage 1ere boucle"
for array in "${array[@]}"
do
echo "$array"
done

echo "boucle for2"
echo "Affichage 2nd boucle"
for array in "${array[@]}"
do
echo "$array"
done
[/code]

Et voici le résultat :

boucle for1
Affichage 1ere boucle
1
2
3
4
5
boucle for2
Affichage 2nd boucle
5
2
3
4
5

Testé avec d’autres langages aucun souci. J’aimerais donc afficher la boucle mais hélas au moment de la seconde boucle, le résultat oublie le “1” et démarre à “5”.
J’ai essayé de jouer avec shift et cela ne fonctionne pas. J’ai changé également la boucle for, sans succès.

Savez-vous d’où cela peut venir s’il vous plait ?

[quote=“Metaltux”]for array in "${array[@]}" do echo "$array" done[/quote]
Change le nom de ta variable qui reçoit tes éléments : [mono]array[/mono] rentre en conflit avec [mono]array[/mono].

for elem in "${array[@]}" do echo "$elem" done

Cool ! Merci.

Cela saute aux yeux mais pas devant les miens … vendredi quoi ;(

Encore merci !