Merge branch 'vendor/BINUTILS221'
[dragonfly.git] / usr.bin / lam / lam.1
1 .\" Copyright (c) 1993
2 .\"     The Regents of the University of California.  All rights reserved.
3 .\"
4 .\" Redistribution and use in source and binary forms, with or without
5 .\" modification, are permitted provided that the following conditions
6 .\" are met:
7 .\" 1. Redistributions of source code must retain the above copyright
8 .\"    notice, this list of conditions and the following disclaimer.
9 .\" 2. Redistributions in binary form must reproduce the above copyright
10 .\"    notice, this list of conditions and the following disclaimer in the
11 .\"    documentation and/or other materials provided with the distribution.
12 .\" 3. All advertising materials mentioning features or use of this software
13 .\"    must display the following acknowledgement:
14 .\"     This product includes software developed by the University of
15 .\"     California, Berkeley and its contributors.
16 .\" 4. Neither the name of the University nor the names of its contributors
17 .\"    may be used to endorse or promote products derived from this software
18 .\"    without specific prior written permission.
19 .\"
20 .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
21 .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
22 .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
23 .\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
24 .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
25 .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
26 .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
27 .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
28 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
29 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
30 .\" SUCH DAMAGE.
31 .\"
32 .\"     @(#)lam.1       8.1 (Berkeley) 6/6/93
33 .\" $FreeBSD: src/usr.bin/lam/lam.1,v 1.4.2.6 2002/06/21 15:27:34 charnier Exp $
34 .\" $DragonFly: src/usr.bin/lam/lam.1,v 1.2 2003/06/17 04:29:27 dillon Exp $
35 .\"
36 .Dd September 20, 2001
37 .Dt LAM 1
38 .Os
39 .Sh NAME
40 .Nm lam
41 .Nd laminate files
42 .Sh SYNOPSIS
43 .Nm
44 .Op Fl f Ar min . Ns Ar max
45 .Op Fl s Ar sepstring
46 .Op Fl t Ar c
47 .Ar
48 .Nm
49 .Op Fl p Ar min . Ns Ar max
50 .Op Fl s Ar sepstring
51 .Op Fl t Ar c
52 .Ar
53 .Sh DESCRIPTION
54 The
55 .Nm
56 utility copies the named files side by side onto the standard output.
57 The
58 .Em n-th
59 input lines from the input
60 .Ar files
61 are considered fragments of the single long
62 .Em n-th
63 output line into which they are assembled.
64 The name `\fB\-\fP' means the standard input, and may be repeated.
65 .Pp
66 Normally, each option affects only the
67 .Ar file
68 after it.
69 If the option letter is capitalized it affects all subsequent files
70 until it appears again uncapitalized.
71 The options are described below:
72 .Bl -tag -width indent
73 .It Fl f Ar min . Ns Ar max
74 Print line fragments according to the format string
75 .Ar min . Ns Ar max ,
76 where
77 .Ar min
78 is the minimum field width and
79 .Ar max
80 the maximum field width.
81 If
82 .Ar min
83 begins with a zero, zeros will be added to make up the field width,
84 and if it begins with a `\-', the fragment will be left-adjusted
85 within the field.
86 .It Fl p Ar min . Ns Ar max
87 Like
88 .Fl f ,
89 but pad this file's field when end-of-file is reached
90 and other files are still active.
91 .It Fl s Ar sepstring
92 Print
93 .Ar sepstring
94 before printing line fragments from the next file.
95 This option may appear after the last file.
96 .It Fl t Ar c
97 The input line terminator is
98 .Ar c
99 instead of a newline.
100 The newline normally appended to each output line is omitted.
101 .El
102 .Pp
103 To print files simultaneously for easy viewing use
104 .Xr pr 1 .
105 .Sh EXAMPLES
106 The command
107 .Bd -literal
108 lam file1 file2 file3 file4
109 .Ed
110 .Pp
111 joins 4 files together along each line.
112 To merge the lines from four different files use
113 .Bd -literal
114 lam file1 \-S "\\
115 " file2 file3 file4
116 .Ed
117 .Pp
118 Every 2 lines of a file may be joined on one line with
119 .Bd -literal
120 lam \- \- < file
121 .Ed
122 .Pp
123 and a form letter with substitutions keyed by `@' can be done with
124 .Bd -literal
125 lam \-t @ letter changes
126 .Ed
127 .Sh SEE ALSO
128 .Xr join 1 ,
129 .Xr paste 1 ,
130 .Xr pr 1 ,
131 .Xr printf 3
132 .Sh STANDARDS
133 Some of the functionality of
134 .Nm
135 is standardized as the
136 .Xr paste 1
137 utility by
138 .St -p1003.2 .