С помощью bash я бы сделал:
while IFS=$'\n' read -r line
do
printf "%-${COLUMNS}s\r" "$line"
sleep 1
done < file
Используя возврат каретки (\r) вместо строки (\n), вы можете перезаписать текущую строку. [[6]] выдает вывод с пробелами, чтобы предыдущие строки были полностью перезаписаны.
Для решения для каждого слова, я думаю, необходим двойной цикл:
while read -ra line
do
for word in "${line[@]}"
do
printf "%-${COLUMNS}s\r" "$word"
sleep 1
done
done < file