1. 程式人生 > >Linux下使用Shell擷取檔案一部分內容儲存到新的檔案中

Linux下使用Shell擷取檔案一部分內容儲存到新的檔案中

在叢集上跑資料時市場會出問題,為了方便檢視日誌個人喜歡將日誌下載本地使用notepad檢視,但是由於叢集是公用資源,每一個日誌檔案都會非常大,如圖:


不便於下載到本地進行檢視,為了可以將你關注的部分日誌下載到本地,可以進行如下操作:

1: 確定有自己業務有關的日誌在檔案中的行數

 grep -n "業務有關的關鍵字"  hive.log.2018-06-26


圖中關鍵字為0201的搜尋結果,綠色數字為出現在日誌檔案中所在的行數,這樣就可以大概估算一個我們需要的日誌的出現範圍了。

2:擷取指定行之間的日誌到新的檔案中 

sed -n '開始行數,結束行數p'  待擷取的檔案  >> 儲存的新檔案 

這樣就可以將指定的日誌內容儲存到新檔案中了。執行如下就可以將執行日誌儲存到daxin.log中了。

sed -n '1350679,2151443p'  hive.log.2018-06-26  >> daxin.log