Aqui está uma pergunta de teste com a qual estou preso:
Qual saída a seguinte sequência de comandos produzirá?
echo '1 2 3 4 5 6' | while read a b c; do
echo result: $c $b $a;
done
E a resposta correta é:3 4 5 6 2 1
Eu não tenho ideia do porquê. Alguém pode por favor explicar isso pra mim?
(A princípio pensei que a resposta fosse 3 2 1
.)
Da página de manual de leitura:
Por esse motivo, costumo usar uma variável "lixeira" para coletar qualquer coisa que possa sobrar:
Em uso: