LAM(1)

NAME
lam - laminate files

SYNOPSIS
lam [-Ff min.max] [-Pp min.max] [-Ss sepstring] [-Tt c] file ...

DESCRIPTION
lam copies the named files side by side onto the standard output. The n-th input lines from the input files are considered fragments of the single long n-th output line into which they are assembled. The name “-” means the standard input, and may be repeated.

The options are as follows:

-Ff min.max
    Print line fragments according to the format string min.max, where min is the minimum field width and max the maximum field width. If min begins with a zero, zeros will be prepended to make up the field width instead of blanks, and if it begins with a ‘-’, the fragment will be left-adjusted within the field.

    If -f is used, it affects only the file after it; if -F is used, it affects all subsequent files until it appears again uncapitalized.

-Pp min.max
    Like -f, but pad this file's field when end-of-file is reached and other files are still active.

    If -p is used, it affects only the file after it; if -P is used, it affects all subsequent files until it appears again uncapitalized.

-Ss sepstring
    Print sepstring before printing line fragments from the next file. This option may appear after the last file.

    If -s is used, it affects only the file after it; if -S is used, it affects all subsequent files until it appears again uncapitalized.

-Tt c
    The input line terminator is c instead of a newline. The newline normally appended to each output line is omitted.

    If -t is used, it affects only the file after it; if -T is used, it affects all subsequent files until it appears again uncapitalized.

To print files simultaneously for easy viewing use pr(1).

ENVIRONMENT

LC_CTYPE
    The character encoding locale(1). It determines the display widths of characters used by the -f and -p options. If unset or set to "C", "POSIX", or an unsupported value, each byte is regarded as a character of display width 1.

EXAMPLES
Join four files together along each line:

    $ lam file1 file2 file3 file4

Merge the lines from four different files:

    $ lam file1 -S "\
    " file2 file3 file4

Join every two lines of a file:

    $ lam - - file

A form letter with substitutions keyed by ‘@’ can be done with:

    $ lam -t @ letter changes

SEE ALSO
join(1), pr(1), printf(1)

HISTORY
The lam utility first appeared in 4.2BSD.

AUTHORS
John A. Kunze