- merge corresponding or subsequent lines of files
/usr/bin/paste [options] [file...]
The paste utility concatenates the corresponding lines of the given input files, and write the resulting lines to standard output.
The default operation of paste concatenates the corresponding lines of the input files. The NEWLINE character of every line except the line from the last input file is replaced with a TAB character.
If an EOF (end-of-file) condition is detected on one or more input files, but not all input files, paste behaves as though empty lines were read from the files on which EOF was detected, unless the -s option is specified.
The following options are supported:
Unless a backslash character (\) appears in list, each character in list is an element specifying a delimiter character. If a backslash character appears in list, the backslash character and one or more characters following it are an element specifying a delimiter character as described below. These elements specify one or more delimiters to use, instead of the default TAB character, to replace the NEWLINE character of the input lines. The elements in list are used circularly. That is, when the list is exhausted, the first element from the list is reused.
When the -s option is specified:
The last NEWLINE character in a file is not modified.
The delimiter is reset to the first element of list after each file operand is processed.
When the option is not specified:
The NEWLINE characters in the file specified by the last file is not modified.
The delimiter is reset to the first element of list each time a line is processed from each file.
If a backslash character appears in list, it and the character following it is used to represent the following delimiter characters: If a backslash character appears in list, it and the character following it is used to represent the following delimiter characters:
Empty string (not a null character). If 0 is immediately followed by the character x, the character X, or any character defined by the LC_CTYPE digit keyword, the results are unspecified.
If any other characters follow the backslash, the results are unspecified.
Concatenate all of the lines of each separate input file in command line order. The NEWLINE character of every line except the last line in each input file is replaced with the TAB character, unless otherwise specified by the -d option.
The following operand is supported:
A path name of an input file. If is specified for one or more of the files, the standard input is used. The standard input is read one line at a time, circularly, for each instance of dot .. Implementations support pasting of at least 12 file operands.
See largefile(5) for the description of the behavior of paste when encountering files greater than or equal to 2 Gbyte (231 bytes).
示例 1 Listing a Directory in One Column
The following example lists a directory in one column:
example% ls | paste -d" " -
示例 2 Listing a Directory in Four Columns
The following example lists a directory in four columns:
example% ls | paste - - - -
示例 3 Combining Pairs of Lines from a File into Single Lines
The following example combines pairs of lines from a file into single lines:
example% paste -s -d"\ t\ n" file
See environ(5) for descriptions of the following environment variables that affect the execution of paste: LANG, LC_ALL, LC_CTYPE, LC_MESSAGES, and NLSPATH.
The following exit values are returned:
An error occurred.
See attributes(5) for descriptions of the following attributes: