join
兩個文件中指定欄位內容相同的行連接起來
補充說明
join命令 用來將兩個文件中,制定欄位內容相同的行連接起來。找出兩個文件中,指定欄位內容相同的行,並加以合併,再輸出到標準輸出設備。
語法
1join(選項)(參數)
選項
1-a<1或2>:除了顯示原來的輸出內容之外,還顯示指令文件中沒有相同欄位的行;
2-e<字符串>:若[文件1]與[文件2]中找不到指定的欄位,則在輸出中填入選項中的字符串;
3-i或--ignore-case:比較欄位內容時,忽略大小寫的差異;
4-o<格式>:按照指定的格式來顯示結果;
5-t<字符>:使用欄位的分割字符;
6-v<1或2>:更-a相同,但是隻顯示文件中沒有相同欄位的行;
7-1<欄位>:連接[文件1]指定的欄位;
8-2<欄位>:連接[文件2]指定的欄位。
參數
- 文件1:要進行合併操作的第1個文件參數;
- 文件2:要進行合併操作的第2個文件參數。
常見用法
把兩個文件制定欄位內容相同的行連接起來:
1[root@localhost ~]# cat name
21 xiaoming
32 xiaowang
43 xiaoliu
5[root@localhost ~]# cat city
61 beijing beijing
72 hubei wuhan
83 hunan changsha
9
10# city文件在後,則拼接在後,如果city文件在前,則name文件拼接在後。
11[root@localhost ~]# join name city
121 xiaoming beijing beijing
132 xiaowang hubei wuhan
143 xiaoliu hunan changsha
把兩個文件指定列拼接起來:
1# 把name文件的第2列和city文件的第3列拼接起來
2[root@localhost ~]# join -o 1.2 2.3 name city
3xiaoming beijing
4xiaowang wuhan
5xiaoliu changsha
來源:https://github.com/jaywcjlove/linux-command
最後修改於: Wednesday, January 31, 2024
版權申明:
- 未標註來源的內容皆為原創,未經授權請勿轉載(因轉載後排版往往錯亂、內容不可控、無法持續更新等);
- 非營利為目的,演繹本博客任何內容,請以'原文出處'或者'參考鏈接'等方式給出本站相關網頁地址(方便讀者)。