Grato Julio.
O for é uma solução bem mais lenta que as seguintes:
» Para colocar na variável Nomes
Nomes=$(cat /tmp/nomes.txt)
» Para colocar no vetor Nomes
# Até o Bash 3
Nomes=($(cat /tmp/nomes.txt))
Mapfile Nomes < /tmp/nomes.txt
A última é a mais veloz
Mas temos de tomar alguns cuidados, veja:
$ cat frutas
abacate
maçã
morango
pera
tangerina
uva
$ Nomes=$(cat frutas) # Colocando em uma variável
$ echo $Nomes # Bobeando com o $IFS
abacate maçã morango pera tangerina uva
$ echo "$Nomes" # Processo certo
abacate
maçã
morango
pera
tangerina
uva
Usando vetores:
$ Nomes=($(cat frutas))
$ echo $Nomes
abacate # Aparece somente a 1ª
$ echo ${Nomes[@]} # Para listar todas
abacate maçã morango pera tangerina uva
$ mapfile Nomes < frutas
echo ${Nomes[@]}
abacate maçã morango pera tangerina uva
$ echo ${Nomes[0]} # Lista somente o elemento zero
abacate
$ echo ${Nomes[3]} # Lista o elemento três
pera