What does the Bash operator <<< (i.e. triple less than sign) mean?

gsklee picture gsklee · Oct 31, 2011 · Viewed 18.6k times · Source

What does the triple-less-than-sign bash operator, <<<, mean, as inside the following code block?

LINE="7.6.5.4"
IFS=. read -a ARRAY <<< "$LINE"
echo "$IFS"
echo "${ARRAY[@]}"

Also, why does $IFS remain to be a space, not a period?

Answer

Ignacio Vazquez-Abrams picture Ignacio Vazquez-Abrams · Oct 31, 2011

It redirects the string to stdin of the command.

Variables assigned directly before the command in this way only take effect for the command process; the shell remains untouched.