join、sort等分隔符的问题

待处理的数据,每列使用\t,即tab分隔。如
a文件
hello world     100     0
goodbaby        50      0
goodguy 25      0

b文件
123     hello world
456     goodbaby
789     good baby

正确的命令是
join -t $'\t' -1 1 -2 2 -o "1.1,1.2,2.1" a b

结果是
hello world     100     123
goodbaby        50      456


写成join -t $"\t" join -t '\t' 等等都是不行的,直接用tab键分隔也很难成功。。。

join的默认分隔符是空白,所以hello world     100     123这行会被认为是4个字段

此分隔符对于sort也是一样的。另外需注意,使用join关联两个文件之前,需要对文件进行排序。

猜你喜欢

转载自dpzc.iteye.com/blog/1197429