您的位置:首页 > 运维架构 > Shell

shell join 参数详细说明

2015-07-07 22:59 696 查看
join类似db里面的join方法,同样有left join right join inner join等

指定参数-a 可以指定join的方式。

-a1表示显示第一个文件中不匹配的行,即为left join
-a2表示显示第二个文件中不匹配的行,即为right join

-o 1.1 2.1 -o是输出参数,1.1表示输出第一个文件的第一列;2.1表示输出第二个文件的第一列

-t "|" 是分隔符参数, 表示指定|作为域分隔符

-j 1.1 2.1 -j是表示连接的字段参数, 这里表示第一个文件的第一列和第二个文件的第一列关联

如下举几个例子:

cat employee.txt
100 Jason Smith
200 John Doe
300 Sanjay Gupta
400 Ashok Sharma

cat bonus.txt
200 $500
300 $3,000
400 $1,250

如下输出第一行没有最后收入一列

join -a1 employee.txt bonus.txt
100 Jason Smith
200 John Doe $500
300 Sanjay Gupta $3,000
400 Ashok Sharma $1,250

如下输出没有编号为100的行

join -a2 employee.txt bonus.txt
200 John Doe $500
300 Sanjay Gupta $3,000
400 Ashok Sharma $1,250

只输出名字与收入

join -o 1.2 2.2 employee.txt bonus.txt
John $500
Sanjay $3,000
Ashok $1,250
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: