Paste is mainly used for processing text files. As all known, stdin can also be treated as a file.
The command paste file1 file2 will give a result where each line contains corresponding lines of every operand file delimited by a tab. And to designate delimiter of your own, simply use a -d option like this: paste -d'/' file1 file2.
To do the trick of “paste” multiple files with similar names, apply wildcards like this: paste file*
To better illustrate its function, let’s look at an example:
a.txt the file contains:
1
2
3
4
b.txt is as follows:
a
b
c
d
And the command paste -d ',' a.txt b.txt gives the result:
1,a
2,b
3,c
4,d
By default, paste operation on one file sees each line as an atom manipulative unit. That is, taking each line as a single file.
There is also -d option working just like what it is for in multiple-file circumstance.
And there is special usage under this circumstance. To get it across clearer, let’s look at another example:
A text file labeled data.txt contains this:
China
Chinese
Chile
Unknown
Brazil
DontknowEither
Ameriaca
English
For command paste -d',' - - < data.txt, the output is:
China,Chinese
Chile,Unknown
Brazil,DontknowEither
America,English
And for paste -d',' - - - < data.txt, we get this:
China,Chinese,Chile
Unknown,Brazil,DontknowEither
America,English
Look at and learn from the differences between these two commands and outputs, which are easily understandable enough.
Made with ❤ and at Earth.