NAME
join - join lines of two files on a common field
SYNOPSIS
join
[-a 1|2] [-v 1|2] [-e empty-string] [-o field-list...] [-t char]
[-j[1|2] field] [-1 field] [-2 field] file1 file2
join
{--help,--version}
DESCRIPTION
This manual page
documents the GNU version of
join.
join
prints to the standard output a line for each pair of input lines, one
each from
file1
and
file2,
that have identical join fields. Either filename (but not both) can
be `-', meaning the standard input.
file1
and
file2
should be already sorted in increasing order (not numerically) on the
join fields; unless the
-t
option is given, they should be sorted ignoring blanks at the start of
the line, as
sort
does when given the
-b
option.
The defaults are: the join field is the first field in each line;
fields in the input are separated by one or more blanks, with leading
blanks on the line ignored; fields in the output are separated by a
space; each output line consists of the join field, the remaining
fields from
file1,
then the remaining fields from
file2.
OPTIONS
-
-a file-number
-
Print a line for each unpairable line in file
file-number
(either 1 or 2), in addition to the normal output.
-
-e string
-
Replace empty output fields (those that are missing in the input) with
string.
-
-1, -j1 field
-
Join on field
field
(a positive integer) of file 1.
-
-2, -j2 field
-
Join on field
field
(a positive integer) of file 2.
-
-j field
-
Equivalent to
-1 field -2 field.
-
-o field-list...
-
Construct each output line according to the format in
field-list.
Each element in
field-list
consists of a file number (either 1 or 2), a period, and a field
number (a positive integer). The elements in the list are separated
by commas or blanks. Multiple
field-list
arguments can be given after a single
-o
option; the values of all lists given with
-o
are concatenated together.
-
-t char
-
Use character
char
as the input and output field separator.
-
-v file-number
-
Print a line for each unpairable line in file
file-number
(either 1 or 2), instead of the normal output.
In addition, when GNU
join
is invoked with exactly one argument, the following options are recognized:
-
--help
-
Print a usage message on standard output and exit successfully.
-
--version
-
Print version information on standard output then exit successfully.