I am trying to read in a file using read in bash 3.2, but read seems to be converting any instance of multiple whitespace into a single space.For example, the code below has two tabs between hello and there, and three spaces between today and world:while read -r LINE; do    echo $LINEdone <<< hello     theretoday   worldHowever, when run, it outputs with only a space in between each set of words:hello theretoday worldInstead, I'd like it to output the lines with whitespace preserved, e.g.:hello       theretoday   worldIs there any way to do this? If not with read, then with something else?
while read -r LINE; do is replacing multiple spaces with a single space
bash;read
Put quotes around your variable when you print it.  It's being expanded then word split so echo is getting hello and there as separate arguments.echo $LINEor betterprintf '%s\n' $LINEwill keep your whitespaceso it's not the read that's changing your whitespace, it's your not quoting the variable later