paste (Unix program)

From Wikipedia, the free encyclopedia


The paste utility is a program found on Unix-like and otherwise POSIX-compliant operating systems. It is used to concatenate the contents of files for each corresponding line.

Contents

[edit] Usage

The paste utility is invoked with the following syntax:

paste [options] [file1 ..]

[edit] Description

Once invoked, paste will read all its file arguments. For each corresponding line, paste will append the contents of each file at that line to its output along with a tab. When it has completed its operation for the last file, paste will output a newline character and move on to the next line.

[edit] Options

The paste utility accepts the following options:

-d delimators, which specifies a list of delimiters to be used instead of tabs for separating consecutive values on a single line. Each delimiter is used in turn; when the list has been exhausted, paste begins again at the first delimiter.

-s, which causes paste to append the data in serial rather than in parallel; that is, in a horizontal rather than vertical fashion.

[edit] Examples

For the following examples, assume that names.txt is a plain-text file that contains the following information:

Mark Smith
Bobby Brown
Sue Miller
Jenny Igotit

and that numbers.txt is another plain-text file that contains the following information:

555-1234
555-9876
555-6743
867-5309

The following example shows the invocation of paste with names.txt and numbers.txt as well as the resulting output:

$ paste names.txt numbers.txt
Mark Smith      555-1234
Bobby Brown     555-9876
Sue Miller      555-6743
Jenny Igotit    867-5309

When invoked with the -s option, the output of paste is adjusted such that the information is presented in a horizontal fashion:

$ paste -s names.txt numbers.txt
Mark Smith      Bobby Brown     Sue Miller      Jenny Igotit
555-1234        555-9876        555-6734        867-5309

Finally, the use of the -d option is illustrated in the following example:

$ paste -d ., names.txt numbers.txt
Mark Smith.555-1234
Bobby Brown,555-9876
Sue Miller.555-6743
Jenny Igotit,867-5309

[edit] References

"PASTE(1)". FreeBSD General Commands Manual. <http://www.freebsd.org/cgi/man.cgi?query=paste&section=1&format=html>

"8.2 paste: Merge lines of files". GNU text utilities: paste invocation. <http://www.gnu.org/software/textutils/manual/textutils/html_node/textutils_35.html>

[edit] See also

[edit] External links