i=0
while true; do
a[$i]=foo
i=$((i+1))
printf "\r%d " $i
done
This simple script shows:
ksh88limits the size to2^12-1(4095). (subscript out of range)ksh93limits the size of a array to2^22-1(4194304)bashdoesn't impose any hard-coded limit outside the one dictated by the underlying memory resources available. For example bash uses1.3 GBfor an array size of18074340.