2018-09-02 14:53:21 +01:00
|
|
|
# join
|
|
|
|
|
|
|
|
> Join lines of two sorted files on a common field.
|
2021-04-01 16:54:26 +01:00
|
|
|
> More information: <https://www.gnu.org/software/coreutils/join>.
|
2018-09-02 14:53:21 +01:00
|
|
|
|
|
|
|
- Join two files on the first (default) field:
|
|
|
|
|
2024-01-31 03:55:19 +00:00
|
|
|
`join {{path/to/file1}} {{path/to/file2}}`
|
2018-09-02 14:53:21 +01:00
|
|
|
|
2019-10-29 20:22:34 +00:00
|
|
|
- Join two files using a comma (instead of a space) as the field separator:
|
2019-10-23 16:46:01 +01:00
|
|
|
|
2024-01-31 03:55:19 +00:00
|
|
|
`join -t {{','}} {{path/to/file1}} {{path/to/file2}}`
|
2019-10-23 16:46:01 +01:00
|
|
|
|
2018-09-02 14:53:21 +01:00
|
|
|
- Join field3 of file1 with field1 of file2:
|
|
|
|
|
2024-01-31 03:55:19 +00:00
|
|
|
`join -1 {{3}} -2 {{1}} {{path/to/file1}} {{path/to/file2}}`
|
2018-09-02 14:53:21 +01:00
|
|
|
|
|
|
|
- Produce a line for each unpairable line for file1:
|
|
|
|
|
2024-01-31 03:55:19 +00:00
|
|
|
`join -a {{1}} {{path/to/file1}} {{path/to/file2}}`
|
2022-10-02 14:51:08 +01:00
|
|
|
|
2022-12-04 07:53:34 +00:00
|
|
|
- Join a file from `stdin`:
|
2022-10-02 14:51:08 +01:00
|
|
|
|
|
|
|
`cat {{path/to/file1}} | join - {{path/to/file2}}`
|