Просто передайте свою строку вашей функции:
function my_function
{
while test $# -gt 0
do
echo "do something with $1"
shift
done
}
my_string="cat
dog
bird"
my_function $my_string
дает вам:
do something with cat
do something with dog
do something with bird
И если вы действительно заботитесь о том, чтобы другие пробельные символы использовались в качестве разделителей аргументов, сначала установите IFS
:
IFS="
"
my_string="cat and kittens
dog
bird"
my_function $my_string
чтобы получить:
do something with cat and kittens
do something with dog
do something with bird
Не забудьте unset IFS
после этого.