Select the TWO true statements about output redirection in bash.

LPIC-1 Exam 101-500, objective 103. GNU and Unix commands hard

Machine-checked — no person has signed for it. This question was read against the source cited below by an automated pass, which found no contradiction. That is a weaker claim than it sounds: the same kind of process wrote the question, so it can confirm its own mistake.

Treat it as a good draft rather than as settled fact, and read the source below before you rely on it. It is not used in mock exams here — only questions a person has signed for are.

How these questions are written — where each question comes from, what the verification ledger records, and what happens when one is found wrong.

The options

Choose 2.

Not correct > out.log adds to the end of out.log if the file already exists.

Wrong. > truncates an existing file to zero length before writing. Appending is >>.

Not correct A pipe passes both standard output and standard error to the next command.

Wrong. A plain | passes only standard output; standard error still goes to the terminal. Use |& in bash, or 2>&1 | , to pipe both.

Not correct In `cmd 2>&1 > out.log`, both streams end up in out.log.

Wrong, and this is the classic trap. Redirections are processed left to right: 2>&1 first points stderr at wherever stdout currently goes (the terminal), and only then is stdout moved to the file. The correct order is `cmd > out.log 2>&1`.

Correct 2> errors.log sends only standard error to the file, leaving standard output on the terminal.

Correct. 2 is the file descriptor for standard error, so only that stream is redirected.

Correct &> all.log sends both standard output and standard error to the file.

Correct in bash (and the equivalent portable form is > all.log 2>&1). Both streams end up in the same file, which is truncated first.

Why

Every process starts with three descriptors: 0 stdin, 1 stdout, 2 stderr. > and >> redirect descriptor 1 (truncating or appending), 2> and 2>> redirect descriptor 2, and n>&m makes descriptor n a duplicate of descriptor m at that moment. Because duplication copies the CURRENT target, the order of redirections on the line changes the result.

Where this comes from

Cited
LPI exam objective 103.4
What it says
Redirect standard input, standard output and standard error, including combining streams.

Practise this

Reading one question is not practice. The trainer will draw a short set from objective 103 and space the ones you get wrong.

Practise LPIC-1 Exam 101-500

More questions on this objective

All questions on GNU and Unix commands

Practise LPIC-1 Exam 101-500