Two files each contain 100 lines. You want line 1 of the first file next to line 1 of the second, line 2 next to line 2, and so on, separated by a tab. Which command does this?

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

Draft — not checked yet. This question was written from the published exam objectives and cites the clause it comes from, but nobody has yet read it against that clause and signed for it.

It is kept out of search results and out of mock exams until they have. Read the source below before you take the answer as settled.

The options

Correct paste file1 file2

Correct. paste merges corresponding lines of its input files side by side, separated by a tab unless you change it with -d.

Not correct join file1 file2

Wrong. join pairs lines that share a common FIELD value (the first field by default) and requires both inputs to be sorted on that field. It is a relational join, not a positional merge.

Not correct cat file1 file2

Wrong. cat concatenates the files one after the other, producing 200 lines rather than 100 wider ones.

Not correct split file1 file2

Wrong. split cuts one input file into several smaller pieces; the second argument is the output name prefix, not another input.

Why

paste works positionally: line n of every input becomes one output line, tab-separated by default (-d changes the separator, -s pastes each file onto a single line). join works by matching a key field and needs sorted input, and split chops a file into chunks by size (-b) or by line count (-l).

Where this comes from

Cited
LPI exam objective 103.2
What it says
Combine text streams with paste and join.

Practise this

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

Practise LPIC-1 Exam 101-500