man/cat1p/paste.1p.txt

paste(P) paste(P)
 
 
 
 
 
NAME
       paste - merge corresponding or subsequent lines of files
 
SYNOPSIS
       paste [-s][-d list] file...
 
DESCRIPTION
       The paste utility shall concatenate the corresponding
       lines of the given input files, and write the resulting
       lines to standard output.
 
       The default operation of paste shall concatenate the
       corresponding lines of the input files. The <newline> of
       every line except the line from the last input file
       shall be replaced with a <tab>.
 
       If an end-of-file condition is detected on one or more
       input files, but not all input files, paste shall behave
       as though empty lines were read from the files on which
       end-of-file was detected, unless the -s option is speci-
       fied.
 
OPTIONS
       The paste utility shall conform to the Base Definitions
       volume of IEEE Std 1003.1-2001, Section 12.2, Utility
       Syntax Guidelines.
 
       The following options shall be supported:
 
       -d list
              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 delim-
              iters to use, instead of the default <tab>, to
              replace the <newline> of the input lines. The
              elements in list shall be 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> in a file shall not be modi-
              fied.
 
              The delimiter shall be reset to the first element
              of list after each file operand is processed.
 
       When the -s option is not specified:
 
              The <newline>s in the file specified by the last
              file operand shall not be modified.
 
              The delimiter shall be 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 shall be used to represent the
       following delimiter characters:
 
       \n <newline>.
 
       \t <tab>.
 
       \\ Backslash character.
 
       \0 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 (see the Base Definitions
              volume of IEEE Std 1003.1-2001, Chapter 7,
              Locale), the results are unspecified.
 
 
       If any other characters follow the backslash, the
       results are unspecified.
 
       -s Concatenate all of the lines of each separate
              input file in command line order. The <newline>
              of every line except the last line in each input
              file shall be replaced with the <tab>, unless
              otherwise specified by the -d option.
 
 
OPERANDS
       The following operand shall be supported:
 
       file A pathname of an input file. If '-' is specified
              for one or more of the files, the standard input
              shall be used; the standard input shall be read
              one line at a time, circularly, for each instance
              of '-' . Implementations shall support pasting of
              at least 12 file operands.
 
 
STDIN
       The standard input shall be used only if one or more
       file operands is '-' . See the INPUT FILES section.
 
INPUT FILES
       The input files shall be text files, except that line
       lengths shall be unlimited.
 
ENVIRONMENT VARIABLES
       The following environment variables shall affect the
       execution of paste:
 
       LANG Provide a default value for the internationaliza-
              tion variables that are unset or null. (See the
              Base Definitions volume of IEEE Std 1003.1-2001,
              Section 8.2, Internationalization Variables for
              the precedence of internationalization variables
              used to determine the values of locale cate-
              gories.)
 
       LC_ALL If set to a non-empty string value, override the
              values of all the other internationalization
              variables.
 
       LC_CTYPE
              Determine 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).
 
       LC_MESSAGES
              Determine the locale that should be used to
              affect the format and contents of diagnostic mes-
              sages written to standard error.
 
       NLSPATH
              Determine the location of message catalogs for
              the processing of LC_MESSAGES .
 
 
ASYNCHRONOUS EVENTS
       Default.
 
STDOUT
       Concatenated lines of input files shall be separated by
       the <tab> (or other characters under the control of the
       -d option) and terminated by a <newline>.
 
STDERR
       The standard error shall be used only for diagnostic
       messages.
 
OUTPUT FILES
       None.
 
EXTENDED DESCRIPTION
       None.
 
EXIT STATUS
       The following exit values shall be returned:
 
        0 Successful completion.
 
       >0 An error occurred.
 
 
CONSEQUENCES OF ERRORS
       If one or more input files cannot be opened when the -s
       option is not specified, a diagnostic message shall be
       written to standard error, but no output is written to
       standard output. If the -s option is specified, the
       paste utility shall provide the default behavior
       described in Utility Description Defaults .
 
       The following sections are informative.
 
APPLICATION USAGE
       When the escape sequences of the list option-argument
       are used in a shell script, they must be quoted; other-
       wise, the shell treats the '\' as a special character.
 
       Conforming applications should only use the specific
       backslash escaped delimiters presented in this volume of
       IEEE Std 1003.1-2001. Historical implementations treat
       '\x' , where 'x' is not in this list, as 'x' , but
       future implementations are free to expand this list to
       recognize other common escapes similar to those accepted
       by printf and other standard utilities.
 
       Most of the standard utilities work on text files. The
       cut utility can be used to turn files with arbitrary
       line lengths into a set of text files containing the
       same data. The paste utility can be used to create (or
       recreate) files with arbitrary line lengths. For exam-
       ple, if file contains long lines:
 
 
              cut -b 1-500 -n file > file1
              cut -b 501- -n file > file2
 
       creates file1 (a text file) with lines no longer than
       500 bytes (plus the <newline>) and file2 that contains
       the remainder of the data from file. Note that file2 is
       not a text file if there are lines in file that are
       longer than 500 + {LINE_MAX} bytes. The original file
       can be recreated from file1 and file2 using the command:
 
 
              paste -d "\0" file1 file2 > file
 
       The commands:
 
 
              paste -d "\0" ...
              paste -d "" ...
 
       are not necessarily equivalent; the latter is not speci-
       fied by this volume of IEEE Std 1003.1-2001 and may
       result in an error. The construct '\0' is used to mean
       "no separator" because historical versions of paste did
       not follow the syntax guidelines, and the command:
 
 
              paste -d"" ...
 
       could not be handled properly by getopt().
 
EXAMPLES
       Write out a directory in four columns:
 
 
              ls | paste - - - -
 
       Combine pairs of lines from a file into single lines:
 
 
              paste -s -d "\t\n" file
 
RATIONALE
       None.
 
FUTURE DIRECTIONS
       None.
 
SEE ALSO
       Utility Description Defaults , cut , grep , pr
 
COPYRIGHT
       Portions of this text are reprinted and reproduced in
       electronic form from IEEE Std 1003.1, 2003 Edition,
       Standard for Information Technology -- Portable Operat-
       ing System Interface (POSIX), The Open Group Base Speci-
       fications Issue 6, Copyright (C) 2001-2003 by the Insti-
       tute of Electrical and Electronics Engineers, Inc and
       The Open Group. In the event of any discrepancy between
       this version and the original IEEE and The Open Group
       Standard, the original IEEE and The Open Group Standard
       is the referee document. The original Standard can be
       obtained online at http://www.open-
       group.org/unix/online.html .
 
 
 
POSIX 2003 paste(P)