Merge corresponding or subsequent lines of files
Syntax paste [-s] [-d list] file ... Options -d list Use one or more of the provided characters to replace the newline characters instead of the default tab. The charac- ters in list are used circularly, i.e., when list is exhaust- ed the first character from list is reused. This continues until a line from the last input file (in default operation) or the last line in each file (using the -s option) is dis- played, at which time paste begins selecting characters from the beginning of list again. The following special characters can also be used in list: \n newline character \t tab character \\ backslash character \0 Empty string (not a null character). Any other character preceded by a backslash is equivalent to the character itself. -s Concatenate all of the lines of each separate input file in command line order. The newline character of every line ex- cept the last line in each input file is replaced with the tab character, unless otherwise specified by the -d option.
If '-' is specified for one or more of the input files, the standard input is used; standard input is read one line at a time, circularly, for each instance of '-'.
paste exits 0 on success, and >0 if an error occurs.
Combines the lines from two files:
$ paste file1.txt file2.txt > result.txt
List the files in the current directory in three columns:
ls | paste - - -
Combine pairs of lines from a file into single lines:
paste -s -d '\t\n' myfile
Number the lines in a file, similar to nl:
sed = myfile | paste -s -d '\t\n' - -
Create a colon-separated list of directories named bin, suitable for use in the PATH environment variable:
find / -name bin -type d | paste -s -d : -
“I have yet to hear a man ask for advice on how to combine marriage and a career” ~ Gloria Steinem
Related macOS commands:
cut - Divide a file into several parts.
fmt - Reformat paragraph text.
fold - Wrap input lines to fit in specified width.
head - Output the first part of file(s).
join - Join lines on a common field.