| JOIN(1) | General Commands Manual | JOIN(1) |
NAME¶
join - For each pair of input lines with identical join fields, write a line to standard output. The default join field is the first, delimited by blanks.
When FILE1 or FILE2 (not both) is -, read standard input.
SYNOPSIS¶
join [-a ] [-v ] [-e ] [-i|--ignore-case] [-j ] [-o ] [-t ] [-1 ] [-2 ] [--check-order] [--nocheck-order] [--header] [-z|--zero-terminated] [-h|--help] [-V|--version] <FILE1> <FILE2>
DESCRIPTION¶
For each pair of input lines with identical join fields, write a line to standard output. The default join field is the first, delimited by blanks.
When FILE1 or FILE2 (not both) is -, read standard input.
OPTIONS¶
- -a <FILENUM>
- also print unpairable lines from file FILENUM, where FILENUM is 1 or 2,
corresponding to FILE1 or FILE2
Possible values:
- 1
- 2
- -v <FILENUM>
- like -a FILENUM, but suppress joined output lines
Possible values:
- 1
- 2
- -e <EMPTY>
- replace missing input fields with EMPTY
- -i, --ignore-case
- ignore differences in case when comparing fields
- -j <FIELD>
- equivalent to '-1 FIELD -2 FIELD'
- -o <FORMAT>
- obey FORMAT while constructing output line
- -t <CHAR>
- use CHAR as input and output field separator
- -1 <FIELD>
- join on this FIELD of file 1
- -2 <FIELD>
- join on this FIELD of file 2
- --check-order
- check that the input is correctly sorted, even if all input lines are pairable
- --nocheck-order
- do not check that the input is correctly sorted
- --header
- treat the first line in each file as field headers, print them without trying to pair them
- -z, --zero-terminated
- line delimiter is NUL, not newline
- -h, --help
- Print help
- -V, --version
- Print version
VERSION¶
v(uutils coreutils) 0.8.0
EXAMPLES¶
Join two files on the first (default) field:
join path/to/file1 path/to/file2
Join two files using a comma (instead of a space) as the field separator:
join -t ',' path/to/file1 path/to/file2
Join field3 of file1 with field1 of file2:
join -1 3 -2 1 path/to/file1 path/to/file2
Produce a line for each unpairable line for file1:
join -a 1 path/to/file1 path/to/file2
Join a file from `stdin`:
cat path/to/file1 | join - path/to/file2
The examples are provided by the tldr-pages project <https://tldr.sh> under the CC BY 4.0 License. Please note that, as uutils is a work in progress, some examples might fail.
| 2026-05-17 |