From:http://www.xiaoxiaozi.com/2009/12/02/1659/
 
之前我介绍过linux的join命令和sort命令。
有一点没有说明的是,使用join的时候要对两个比较的文件先排序的。
但是这个排序是要小心进行的,一般要使用sort不附加任何参数即可以,
因为join实际上是按字符串对两个文件进行“撞”的。
所以千万不要使用例如-n -g这类参数对文件进行排序。
 
a.txt b.txt的内容如下:
a.txt
1
 
b.txt
3
2
1
21
 
简单的join
join a.txt b.txt
#join: 文件2 没有被正确排序
 
排序-n后join
sort -n b.txt > c.txt
join a.txt c.txt
#1
#join: 文件2 没有被正确排序
 
排序,不做数值排序后join
sort b.txt > c.txt
join a.txt c.txt
#1
 
join -v1 c.txt a.txt
#2
#21
#3