[BACK]Return to lam.1 CVS log [TXT][DIR] Up to [local] / src / usr.bin / lam

Annotation of src/usr.bin/lam/lam.1, Revision 1.11

1.11    ! jmc         1: .\"    $OpenBSD: lam.1,v 1.10 2018/07/29 11:27:14 schwarze Exp $
1.4       millert     2: .\"    $NetBSD: lam.1,v 1.4 2002/02/08 01:36:25 ross Exp $
1.1       deraadt     3: .\"
                      4: .\" Copyright (c) 1993
                      5: .\"    The Regents of the University of California.  All rights reserved.
                      6: .\"
                      7: .\" Redistribution and use in source and binary forms, with or without
                      8: .\" modification, are permitted provided that the following conditions
                      9: .\" are met:
                     10: .\" 1. Redistributions of source code must retain the above copyright
                     11: .\"    notice, this list of conditions and the following disclaimer.
                     12: .\" 2. Redistributions in binary form must reproduce the above copyright
                     13: .\"    notice, this list of conditions and the following disclaimer in the
                     14: .\"    documentation and/or other materials provided with the distribution.
1.5       millert    15: .\" 3. Neither the name of the University nor the names of its contributors
1.1       deraadt    16: .\"    may be used to endorse or promote products derived from this software
                     17: .\"    without specific prior written permission.
                     18: .\"
                     19: .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
                     20: .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
                     21: .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
                     22: .\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
                     23: .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
                     24: .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
                     25: .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
                     26: .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
                     27: .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
                     28: .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
                     29: .\" SUCH DAMAGE.
                     30: .\"
                     31: .\"    @(#)lam.1       8.1 (Berkeley) 6/6/93
                     32: .\"
1.11    ! jmc        33: .Dd $Mdocdate: July 29 2018 $
1.4       millert    34: .Dt LAM 1
                     35: .Os
                     36: .Sh NAME
                     37: .Nm lam
                     38: .Nd laminate files
                     39: .Sh SYNOPSIS
                     40: .Nm
1.11    ! jmc        41: .Op Fl F\*(Baf Ar min.max
        !            42: .Op Fl P\*(Bap Ar min.max
        !            43: .Op Fl S\*(Bas Ar sepstring
        !            44: .Op Fl T\*(Bat Ar c
1.8       sobrado    45: .Ar
1.4       millert    46: .Sh DESCRIPTION
                     47: .Nm
1.1       deraadt    48: copies the named files side by side onto the standard output.
                     49: The
1.4       millert    50: .Em n Ns -th
1.1       deraadt    51: input lines from the input
1.4       millert    52: .Ar files
1.1       deraadt    53: are considered fragments of the single long
1.4       millert    54: .Em n Ns -th
1.1       deraadt    55: output line into which they are assembled.
1.4       millert    56: The name
                     57: .Dq \&-
                     58: means the standard input, and may be repeated.
                     59: .Pp
1.11    ! jmc        60: The options are as follows:
1.4       millert    61: .Bl -tag -width "-s sepstring"
1.11    ! jmc        62: .It Fl F\*(Baf Ar min.max
1.1       deraadt    63: Print line fragments according to the format string
1.4       millert    64: .Ar min.max ,
1.1       deraadt    65: where
1.4       millert    66: .Ar min
1.1       deraadt    67: is the minimum field width and
1.4       millert    68: .Ar max
1.1       deraadt    69: the maximum field width.
                     70: If
1.4       millert    71: .Ar min
1.10      schwarze   72: begins with a zero, zeros will be prepended to make up the field width
                     73: instead of blanks, and if it begins with a
1.4       millert    74: .Sq \&- ,
                     75: the fragment will be left-adjusted
1.1       deraadt    76: within the field.
1.11    ! jmc        77: .Pp
        !            78: If
        !            79: .Fl f
        !            80: is used, it affects only the file after it;
        !            81: if
        !            82: .Fl F
        !            83: is used, it affects all subsequent files
        !            84: until it appears again uncapitalized.
        !            85: .It Fl P\*(Bap Ar min.max
1.4       millert    86: Like
                     87: .Fl f ,
1.1       deraadt    88: but pad this file's field when end-of-file is reached
                     89: and other files are still active.
1.11    ! jmc        90: .Pp
        !            91: If
        !            92: .Fl p
        !            93: is used, it affects only the file after it;
        !            94: if
        !            95: .Fl P
        !            96: is used, it affects all subsequent files
        !            97: until it appears again uncapitalized.
        !            98: .It Fl S\*(Bas Ar sepstring
1.1       deraadt    99: Print
1.4       millert   100: .Ar sepstring
1.1       deraadt   101: before printing line fragments from the next file.
                    102: This option may appear after the last file.
1.11    ! jmc       103: .Pp
        !           104: If
        !           105: .Fl s
        !           106: is used, it affects only the file after it;
        !           107: if
        !           108: .Fl S
        !           109: is used, it affects all subsequent files
        !           110: until it appears again uncapitalized.
        !           111: .It Fl T\*(Bat Ar c
1.1       deraadt   112: The input line terminator is
1.4       millert   113: .Ar c
1.1       deraadt   114: instead of a newline.
                    115: The newline normally appended to each output line is omitted.
1.11    ! jmc       116: .Pp
        !           117: If
        !           118: .Fl t
        !           119: is used, it affects only the file after it;
        !           120: if
        !           121: .Fl T
        !           122: is used, it affects all subsequent files
        !           123: until it appears again uncapitalized.
1.4       millert   124: .El
                    125: .Pp
1.1       deraadt   126: To print files simultaneously for easy viewing use
1.4       millert   127: .Xr pr 1 .
1.10      schwarze  128: .Sh ENVIRONMENT
                    129: .Bl -tag -width LC_CTYPE
                    130: .It Ev LC_CTYPE
                    131: The character encoding
                    132: .Xr locale 1 .
                    133: It determines the display widths of characters used by the
                    134: .Fl f
                    135: and
                    136: .Fl p
                    137: options.
                    138: If unset or set to
                    139: .Qq C ,
                    140: .Qq POSIX ,
                    141: or an unsupported value, each byte is regarded as a character
                    142: of display width 1.
                    143: .El
1.4       millert   144: .Sh EXAMPLES
1.6       jmc       145: Join four files together along each line:
                    146: .Pp
1.4       millert   147: .Dl $ lam file1 file2 file3 file4
                    148: .Pp
1.6       jmc       149: Merge the lines from four different files:
1.4       millert   150: .Bd -literal -offset indent
1.6       jmc       151: $ lam file1 \-S "\e
1.1       deraadt   152: " file2 file3 file4
1.4       millert   153: .Ed
                    154: .Pp
1.6       jmc       155: Join every two lines of a file:
                    156: .Pp
1.4       millert   157: .Dl $ lam \- \- \*(Lt file
                    158: .Pp
1.6       jmc       159: A form letter with substitutions keyed by
1.4       millert   160: .Sq \&@
1.6       jmc       161: can be done with:
                    162: .Pp
1.4       millert   163: .Dl $ lam \-t @ letter changes
                    164: .Sh SEE ALSO
                    165: .Xr join 1 ,
                    166: .Xr pr 1 ,
                    167: .Xr printf 1
1.9       schwarze  168: .Sh HISTORY
                    169: The
                    170: .Nm
                    171: utility first appeared in
                    172: .Bx 4.2 .
                    173: .Sh AUTHORS
                    174: .An John A. Kunze