Depende de como você define palavras.
Se as palavras estiverem separadas por um ou mais espaços, você pode fazer:
tr -s '[:blank:]' '[\n*]' < file |
while IFS= read -r word; do
: echo "$word" here
done
Se as palavras forem seqüências de caracteres, contenha A-Z
, a-z
e _
:
tr -cs 'A-Za-z_' '[\n*]' < file | ...
Em sistemas históricos do System V, você precisa usar colchetes [A-Za-z_]
.