paste(1)paste(1)NAMEpaste - Joins corresponding lines of several files or subsequent lines
in one file
SYNOPSISpaste [-d list] [-s] file...
STANDARDS
Interfaces documented on this reference page conform to industry stan‐
dards as follows:
paste: XCU5.0
Refer to the standards(5) reference page for more information about
industry standards and associated tags.
OPTIONS
Replaces the delimiter that separates lines in the output (tab by
default) with one or more characters from list. If list contains more
than one character, then the characters are repeated in order until the
end of the output. In parallel merging, the lines from the last file
always end with a newline character, instead of one from list.
The following special characters can be used in list: Newline
character Tab Backslash Empty string (not a null character)
[Tru64 UNIX] An extended character
You must quote characters that have special meaning to the
shell. Merges all lines from each input file into one line of
output (serial merging). Using this option, the paste command
merges all lines in the first input file forcing a newline
before at the end. The command then continues with the next
input file, continuing in the same manner until all input files
have been completed. A tab separates the input lines unless you
use the -d option. Regardless of the list, the last character
of the output is a newline character.
OPERANDS
The name of an input file. You may specify up to 12 files, including
hyphens.
If you specify a -, paste reads standard input recursively, one
line for each -.
DESCRIPTION
Specifying the -d option or no options causes the paste command to
treat each file as a column, joining them horizontally with a tab char‐
acter by default (parallel merging).
Using the -s option, the paste command combines all lines of each input
file into one output line (serial merging). These lines are joined
with the tab character by default.
Output lines can be any length.
[Tru64 UNIX] The output of pr -t -m is similar to the output produced
by the paste command, but pr with its options creates extra spaces,
tabs, and lines for an enhanced page layout.
RESTRICTIONS
If the -s option is not used, it is an error if any specified file can‐
not be opened.
EXIT STATUS
The following exit values are returned: Successful completion. An
error occurred.
EXAMPLES
To paste several columns of data together, enter: paste names places
dates > npd
This creates a file named npd that contains the data from names
in one column, places in another, and dates in a third. The
columns are separated by tab characters.
File npd then contains:
rachel New York 28 February jerzy War‐
saw 27 April mata Nairobi 21 June
michel Boca Raton 27 July segui Managua
18 November
A tab character separates the name, place, and date on each
line. To separate the columns with a character other than a tab
(sh only), enter: paste -d"!@" names places dates > npd
This alternates the apostrophe (!) and the at sign (@) as the
column separators. If names, places, and dates are the same as
in Example 1, then npd contains:
rachel!New York@28 February jerzy!Warsaw@27 April
mata!Nairobi@21 June michel!Boca Raton@27 July segui!Managua@18
November To display the standard input in multiple columns,
enter: ls | paste - - - -
This lists the current directory in four columns. Each hyphen
(-) tells the paste command to create a column containing data
read from the standard input. The first line is put in the first
column, the second line in the second column, ... and then the
fifth line in the first column, and so on.
This is equivalent to ls | paste -d"\t\t\t\n" -s-
which fills the columns across the page with subsequent lines
from the standard input. The -d\t\t\t\n defines the character
to insert after each column: a tab character (\t) after the
first three columns, and a newline character (\n) after the
fourth. Without the -d option, paste-s - displays all of the
input as one line with a tab between each column. To merge the
lines of the file names above into one output line, enter: paste-s names
This results in: rachel jerzy mata michel segui
ENVIRONMENT VARIABLES
The following environment variables affect the execution of paste: Pro‐
vides a default value for the internationalization variables that are
unset or null. If LANG is unset or null, the corresponding value from
the default locale is used. If any of the internationalization vari‐
ables contain an invalid setting, the utility behaves as if none of the
variables had been defined. If set to a non-empty string value, over‐
rides the values of all the other internationalization variables.
Determines the locale for the interpretation of sequences of bytes of
text data as characters (for example, single-byte as opposed to multi‐
byte characters in arguments and input files). Determines the locale
for the format and contents of diagnostic messages written to standard
error. Determines the location of message catalogues for the process‐
ing of LC_MESSAGES.
SEE ALSO
Commands: cut(1), grep(1), fold(1), join(1), pr(1)
Standards: standards(5)paste(1)