Ob es aus einer Datei kommt oder du es „generierst“, spielt eigentlich keine Rolle, oder? 🙂
#!/bin/bash
laender=(Canada Germany France UK USA "Ukraine I" "Ukraine II")
for (( i = 0; i < ${#laender[@]}; i++ ))
do
echo "[$i] ${laender[i]}"
done | pr -3 -t -T -W $(tput cols)
read -p "Gib ein Land ein: "
echo "Du hast eingegeben: $REPLY für ${laender[REPLY]}"
Wobei ich mir für solche Aufgaben mal das kleine Tool „dialog“ genauer anschauen würde.