Bash gets parameters with spaces

    
quote=""";

function t()
{

echo "${1}"
echo "${2}"
echo "${3}"
}

a="xxx yyy";
b="yyy zzz";
c="aaa.bbb";

cmd="t ${quote}${a}${quote},${quote}${b}${quote},${quote}${c}${quote}"
eval ${cmd}
t "$a","$b","$c";
It"s no use adding double quotation marks to

, it"s all used as the first parameter.

only all of it is passed in and divided internally?

Aug.23,2021

OIFS=$IFS
IFS=$(printf "\n\b")

-sharp 

IFS=$OIFS

you can search for the function of IFS for details

Menu