Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
JOIN(1)				 User Commands			       JOIN(1)

NAME
       join - join lines of two	files on a common field

SYNOPSIS
       join [OPTION]...	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.

       -a FILENUM
	      also  print unpairable lines from	file FILENUM, where FILENUM is
	      1	or 2, corresponding to FILE1 or	FILE2

       -e STRING
	      replace missing (empty) input fields with	STRING;	I.e.,  missing
	      fields specified with '-12jo' options

       -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

       -v FILENUM
	      like -a FILENUM, but suppress joined output lines

       -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

       --help display this help	and exit

       --version
	      output version information and exit

       Unless  -t  CHAR	 is  given, leading blanks separate fields and are ig-
       nored, else fields are separated	by CHAR.  Any FIELD is a field	number
       counted	from 1.	 FORMAT	is one or more comma or	blank separated	speci-
       fications, each being 'FILENUM.FIELD' or	'0'.  Default  FORMAT  outputs
       the  join  field, the remaining fields from FILE1, the remaining	fields
       from FILE2, all separated by CHAR.  If FORMAT is	 the  keyword  'auto',
       then the	first line of each file	determines the number of fields	output
       for each	line.

       Important:  FILE1  and  FILE2 must be sorted on the join	fields.	 E.g.,
       use "sort -k 1b,1" if 'join' has	no options, or use  "join  -t  ''"  if
       'sort'  has  no	options.   Comparisons	honor  the  rules specified by
       'LC_COLLATE'.  If the input is not sorted  and  some  lines  cannot  be
       joined, a warning message will be given.

AUTHOR
       Written by Mike Haertel.

REPORTING BUGS
       GNU coreutils online help: <https://www.gnu.org/software/coreutils/>
       Report any translation bugs to <https://translationproject.org/team/>

COPYRIGHT
       Copyright  (C) 2025 Free	Software Foundation, Inc.  License GPLv3+: GNU
       GPL version 3 or	later <https://gnu.org/licenses/gpl.html>.
       This is free software: you are free  to	change	and  redistribute  it.
       There is	NO WARRANTY, to	the extent permitted by	law.

SEE ALSO
       comm(1),	uniq(1)

       Full documentation <https://www.gnu.org/software/coreutils/join>
       or available locally via: info '(coreutils) join	invocation'

GNU coreutils 9.6		 January 2025			       JOIN(1)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=gjoin&sektion=1&manpath=FreeBSD+Ports+14.3.quarterly>

home | help