Tri par bulles dans les scripts de shell Linux / Unix

J’essaie d’exécuter un sorting par bulles est un script shell Unix. Pourquoi mon code ne fonctionne pas?

a=(10 8 20 25 12) for ((i=0;i<5;i++)) do for((j=0;j ${a[$((j+1))]})) then v=${a[$j]} a[$j]=${a[$((j+1))]} a[$((j+1))]=$v fi done done echo ${a[*]} echo "end..." 

Je suppose que c’est un devoir. donc je ne donne pas de codes, juste signaler les erreurs dans vos codes:

for((j=0;j<5;j++)) alors lisez a[j+1] , ici ce serait un problème car quand j=4 , j+1 n'existe pas

corrigez cela, votre programme va sortinger.