El siguiente código trata del método de ordenamiento por inserción directa en bash:
#!/bin/bash function inserciondirecta { lista=$1 tam=${#lista[@]} for i in $(seq 1 $[$tam-1]) ; do v=${lista[$i]} j=$[$i-1] while [[ $j -ge 0 && ${lista[$j]} -gt $v ]] ; do lista[$[$j+1]]=${lista[$j]} j=$[$j-1] done lista[$[$j+1]]=$v done } lista=(5 4 3 2 1) inserciondirecta $lista for i in ${lista[@]};do echo $i; done