| 用途 | 有序文件的集合比较(差集/交集) |
|---|---|
| 语法 | comm [选项] 文件1 文件2 |
| 要求 | 两文件都按同一规则排好序 |
常用示例
常用示例
comm -12 <(sort a.txt) <(sort b.txt) # 交集
comm -23 <(sort a.txt) <(sort b.txt) # 只在 a 中
LC_ALL=C comm -3 a.sorted b.sorted | sed 's/^ //'排序规则要一致:一边 LC_ALL=C 一边中文 locale,结果毫无意义。
输出三列:只在文件1、只在文件2、两边都有;-12 取交集、-23 取仅 1 独有,集合运算非常好用;前提是输入必须已排序。
| 用途 | 有序文件的集合比较(差集/交集) |
|---|---|
| 语法 | comm [选项] 文件1 文件2 |
| 要求 | 两文件都按同一规则排好序 |
comm -12 <(sort a.txt) <(sort b.txt) # 交集
comm -23 <(sort a.txt) <(sort b.txt) # 只在 a 中
LC_ALL=C comm -3 a.sorted b.sorted | sed 's/^ //'