Linux Command Sequence Output | LFCS Exam Preparation

What Output Will the Following Command Sequence Produce?

Question

What output will the following command sequence produce?

echo '1 2 3 4 5 6' | while read a b c; do

echo result: $c $b $a;

done

Answers

Explanations

Click on the arrows to vote for the correct answer

A. B. C. D. E.

A

The given command sequence reads input from the echo command and uses the while loop to iterate over each line of input. The read command assigns the first three space-separated values from the input line to variables a, b, and c respectively, on each iteration of the loop.

The command sequence then prints the values of variables a, b, and c in reverse order, separated by spaces, preceded by the string "result:". Therefore, the output of the command sequence depends on the input given to it.

In this case, the input provided is '1 2 3 4 5 6', which has six space-separated values. However, since the read command assigns the first three values to variables a, b, and c on each iteration of the loop, only the first three values (1, 2, and 3) are assigned to these variables on the first iteration, and the remaining values (4, 5, and 6) are ignored.

Therefore, the loop only executes once, and the output of the command sequence will be:

result: 3 2 1

Hence, the correct answer is E.