read -a WORDS -d "" < file.txt
for word in "${WORDS[@]}"
do
echo $word
done
Опция -a сохраняет слова в массиве.
Опция -d определяет строку разделителя. Это сообщает read, где остановить обработку файла. Я указал пустую строку, которая заставляет чтение продолжаться до тех пор, пока не будет получен EOF. То есть обрабатывается весь файл независимо от окончания строки.