In config.txt some lines contain the word `foo` more than once. Which command prints the file with EVERY occurrence on every line replaced by `bar`, leaving the file itself unchanged?

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

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

Not correct sed 's/foo/bar/' config.txt

Wrong. Without a flag, sed substitutes only the FIRST match on each line; later occurrences on the same line survive.

Correct sed 's/foo/bar/g' config.txt

Correct. The trailing g flag makes the substitution global within each line, and sed writes the result to standard output without touching the file.

Not correct sed -n 's/foo/bar/g' config.txt

Wrong. -n suppresses the automatic printing of each line, and there is no p flag here, so this command produces no output at all.

Not correct sed -i 's/foo/bar/g' config.txt

Wrong for this question, though the substitution itself is right. -i edits the file in place, which the question explicitly forbids, and it prints nothing.

Why

sed's substitute command is s/pattern/replacement/flags. Useful flags: g for every match on the line, a number for the nth match, p to print (paired with -n to print only matching lines), i for case-insensitive matching. The -i OPTION (not the flag) rewrites the file in place and is the one to be careful with.

Where this comes from

Cited
LPI exam objective 103.2
What it says
Use sed to perform substitutions on a text stream.

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