| JOIN(1) | 用户命令 | JOIN(1) |
名称¶
join - 根据公共字段连接两个文件的行
概述¶
join [选项]... 文件1 文件2
描述¶
对具有相同的合并域的每一对输入行,在标准输出写出一行信息。默认的合并域是第一列的内容,使用空白字符分隔。
当 文件1 或 文件2 为 - 时(不能两者同时为 -),从标准输入读取。
- -a 文件编号
- 同时打印文件编号所对应文件的无法配对的行,其中文件编号可以是 1 或者 2,分别对应于 文件1 或 文件2
- -e 字符串
- 用给定字符串替换缺失的(空)输入字段;即,由 '-12jo' 选项指定的缺失字段
- -i, --ignore-case
- 比较各个域时忽略大小写差异
- -j 字段
- 等效于 "-1 字段 -2 字段"
- -o 格式
- 按照指定格式构造输出行
- -t 字符
- 使用指定字符作为输入和输出字段的分隔符
- -v 文件编号
- 类似 -a 文件编号,但不输出已连接的行
- -1 字段
- 根据 文件1 的该字段进行连接
- -2 字段
- 根据 文件2 的该字段进行连接
- --check-order
- 检查输入是否正确排序,即便所有输出行均可配对
- --nocheck-order
- 不要检查输入是否正确排序
- --header
- 将每个文件的第一行视为字段标题,将其打印出来且不尝试进行配对
- -z, --zero-terminated
- 以 NUL 作为行的分隔符,而非换行符
- --help
- 显示此帮助信息并退出
- --version
- 显示版本信息并退出
除非给出了 -t 字符,前导空白字符将被用于分隔字段并被忽略;否则给定的字符将被用来分隔字段。任何给定的字段应为从 1 开始计数的字段编号。给定的格式应为一个或多个以逗号或空白字符分隔的规范字串,其中每个字串格式为“文件编号.字段”或者“0”。默认的格式将输出被连接的字段、来自 文件1 的剩余字段以及来自 文件2 的剩余字段;它们都由给定分隔用字符所分隔。如果给定格式字串为“auto”关键字,那么每个文件的第一行决定每行输出的字段数量。
重要提示:文件1 和 文件2 必须按照连接字段排序。例如,如果 'join' 没有选项,则使用 "sort -k 1b,1";或者如果 'sort' 没有选项则使用 "join -t ''"。比较遵循“LC_COLLATE”指定的规则。如果输入未排序且某些行无法连接,程序将会给出警告信息。
作者¶
由 Mike Haertel 编写。
报告错误¶
请报告问题至:bug-coreutils@gnu.org
GNU coreutils 主页:
<https://www.gnu.org/software/coreutils/>
使用 GNU
软件的通用帮助:
<https://www.gnu.org/gethelp/>
请向 <https://translationproject.org/team/zh_CN.html>
报告翻译错误
版权¶
版权所有 © 2026
自由软件基金会。许可证
GPLv3+: GNU GPL 第 3 版或更新版本
<https://gnu.org/licenses/gpl.html>。
本软件是自由软件:您可以自由修改和重新发布它。在法律允许的范围内,不提供任何保证。
参见¶
完整文档请见:
<https://www.gnu.org/software/coreutils/join>
或者在本地使用: info
'(coreutils) join invocation'
跋¶
本页面中文版由中文
man 手册页计划提供。
中文 man
手册页计划:https://github.com/man-pages-zh/manpages-zh
| 2026年四月 | GNU coreutils 9.11 |