歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux編程 >> SHELL編程 >> shell_join實例

shell_join實例

日期:2017/3/1 14:02:37   编辑:SHELL編程
shell_join實例 概述:join命令是鏈接兩個文件內容輸出 使用示例示例一 內連接(忽略不匹配的行) 不指定任何參數的情況下使用join命令,就相當於數據庫中的內連接,關鍵字不匹配的行不會輸出。 [root@rhel55 linux]# cat month_cn.txt 1 一月 2 二月 3 三月 4 四月 5 五月 6 六月 7 七月 8 八月 9 九月 10 十月 11 十一月 12 十二月 13 十三月,故意的 [root@rhel55 linux]# cat month_en.txt 1 January 2 February 3 March 4 April 5 May 6 June 7 July 8 August 9 September 10 October 11 November 12 December 14 MonthUnknown 注:注意兩個文件的內容,中文版的多了十三月,英文版的多了14月,這純粹是為了方便演示。 [root@rhel55 linux]# join month_cn.txt month_en.txt 1 一月 January 2 二月 February 3 三月 March 4 四月 April 5 五月 May 6 六月 June 7 七月 July 8 八月 August 9 九月 September 10 十月 October 11 十一月 November 12 十二月 December [root@rhel55 linux]# 示例二 左連接(又稱左外連接,顯示左邊所有記錄) 顯示左邊文件中的所有記錄,右邊文件中沒有匹配的顯示空白。 [root@rhel55 linux]# join -a1 month_cn.txt month_en.txt 1 一月 January 2 二月 February 3 三月 March 4 四月 April 5 五月 May 6 六月 June 7 七月 July 8 八月 August 9 九月 September 10 十月 October 11 十一月 November 12 十二月 December 13 十三月,故意的 [root@rhel55 linux]# 示例三 右連接(又稱右外連接,顯示右邊所有記錄) 顯示右邊文件中的所有記錄,左邊文件中沒有匹配的顯示空白。 [root@rhel55 linux]# join -a2 month_cn.txt month_en.txt 1 一月 January 2 二月 February 3 三月 March 4 四月 April 5 五月 May 6 六月 June 7 七月 July 8 八月 August 9 九月 September 10 十月 October 11 十一月 November 12 十二月 December 14 MonthUnknown [root@rhel55 linux]# 示例四 全連接(又稱全外連接,顯示左邊和右邊所有記錄) [root@rhel55 linux]# join -a1 -a2 month_cn.txt month_en.txt 1 一月 January 2 二月 February 3 三月 March 4 四月 April 5 五月 May 6 六月 June 7 七月 July 8 八月 August 9 九月 September 10 十月 October 11 十一月 November 12 十二月 December 13 十三月,故意的 14 MonthUnknown [root@rhel55 linux]# 示例五 指定輸出字段 比如參數 -o 1.1 表示只輸出第一個文件的第一個字段。 [root@rhel55 linux]# join -o 1.1 month_cn.txt month_en.txt 1 2 3 4 5 6 7 8 9 10 11 12 [root@rhel55 linux]# join -o 1.1 2.2 month_cn.txt month_en.txt 1 January 2 February 3 March 4 April 5 May 6 June 7 July 8 August 9 September 10 October 11 November 12 December [root@rhel55 linux]# join -o 1.1 2.2 1.2 month_cn.txt month_en.txt 1 January 一月 2 February 二月 3 March 三月 4 April 四月 5 May 五月 6 June 六月 7 July 七月 8 August 八月 9 September 九月 10 October 十月 11 November 十一月 12 December 十二月 [root@rhel55 linux]# join -o 1.1 2.2 1.2 1.3 month_cn.txt month_en.txt <== 字段1.3並不存在 1 January 一月 2 February 二月 3 March 三月 4 April 四月 5 May 五月 6 June 六月 7 July 七月 8 August 八月 9 September 九月 10 October 十月 11 November 十一月 12 December 十二月
Copyright © Linux教程網 All Rights Reserved