Linux 檢視日誌相關命令總結

2021-10-10 18:21:57 字數 3020 閱讀 5566

【引言】

排查線上環境問題,少不了去線上查日誌。而使用什麼命令,能快速準確地查到我們需要查詢地日誌資訊,也是我們需要掌握的一項技能。

【學習】

linux檢視命令有多種:tail,head,cat,tac,more

(一) tail 命令

引數:1)-f 迴圈讀取

2)-q 不顯示處理資訊

3)-v 顯示詳細的處理資訊

4)-c《數目》 顯示的位元組數

5)-n《行數》 顯示行數

應用:命令

含義tail -f test.log

檢視實時日誌

tail -100f test.log

檢視最後100行日誌記錄

tail -n 10 test.log

查詢日誌尾部最後10行的日誌

tail -n +10 test.log

查詢10行之後的所有日誌

tail -fn 100 test.log

迴圈實時檢視最後100行記錄

(二) head 命令功能

跟tail是相反的,tail是檢視後多少行日誌

應用命令

含義head -n 10 test.log

查詢日誌檔案中的前10行日誌

head -n -10 test.log

查詢日誌檔案除了最後10行的其他所有日誌

(三) cat 命令功能

1)一次顯示整個檔案。 cat filename

2)建立乙個檔案。 cat > filename

3)將幾個檔案合併為乙個檔案。 cat file1 file2 > file

引數:1)-n 由1開始對所有輸出的行數編號

2)-b 和-n相似,只不過對於空白行不編號

3)-s 當遇到有連續兩行以上的空白行,就代換為一行的空白行

4)-c《數目》 顯示的位元組數

5)-n《行數》 顯示行數

應用1)cat test.log | tail -n 1000 #輸出test.log 檔案最後1000行

2)cat -n test.log |grep 「debug」 #得到關鍵日誌的行號

3)cat filename | tail -n +3000 | head -n 1000 #從第3000行開始,顯示1000行。即顯示3000~3999行

4)cat filename| head -n 3000 | tail -n +1000 #顯示1000行到3000行

5)cat -n textfile1 > textfile2 #把 textfile1 的檔案內容加上行號後輸入 textfile2 這個檔案裡

6)cat -b textfile1 textfile2 >> textfile3 #把 textfile1 和 textfile2 的檔案內容加上行號(空白行不加)之後將內容附加到 textfile3 裡

(四) tac 命令功能

tac是將cat反寫過來,它的功能跟cat相反,cat是由第一行到最後一行連續顯示,而tac是由最後一行到第一行反向顯示。

(五) more 命令功能

引數1)-num 一次顯示的行數

2)-d 提示使用者,在畫面下方顯示 [press space to continue, 『q』 to quit.] ,如果使用者按錯鍵,則會顯示 [press 『h』 for instructions.] 而不是 『嗶』 聲

3)-l 取消遇見特殊字元 ^l 時會暫停的功能

4)-f 計算行數時,以實際上的行數,而非自動換行過後的行數

5)-p 不以捲動的方式顯示每一頁,而是先清除螢幕後再顯示內容

6)-c 跟 -p 相似,不同的是先顯示內容再清除其他舊資料

7)-s 當遇到有連續兩行以上的空白行,就代換為一行的空白行

8)-u 不顯示下引號 (根據環境變數 term 指定的 terminal 而有所不同)

9)+/pattern 在每個文件顯示前搜尋該字串(pattern),然後從該字串之後開始顯示

10)+num 從第 num 行開始顯示

應用命令

含義more -s test.log

逐頁顯示日誌,如有連續兩行以上空白行則以一行空白行顯示

more +20 test.log

從第 20 行開始顯示日誌內容

(六) grep 命令

功能:上面幾個命令都是用在查詢檔案方便,而在查詢檔案時,我們往往需要通過某些關鍵字查詢,grep命令就可以幫助我們實現快速查詢。

應用1)more joint.log | grep 『60007746』 #根據某退貨號查詢日誌

很多時候,我們都需要看到上下幾行的日誌,可以通過加相關引數實現。

2)more joint.log | grep -5 『60007746』 #列印匹配行的前後5行

3)more joint.log | grep -c 5 『60007746』 #列印匹配行的前後5行

4)more joint.log | grep -a 5 『60007746』 #列印匹配行的後5行

5)more joint.log | grep -b 5 『60007746』 #列印匹配行的前5行

【總結】

熟悉常用的linux命令也是我們必須要掌握的一項技能,這樣在查詢問題過程中也能更加高效速度。

linux系統檢視日誌命令總結

tail命令使用 常用命令示例 動態檢視最新寫入日誌 tail f filename.log 迴圈讀取最新寫入日誌 ctrl c中斷日誌顯示 動態檢視最新寫入日誌並且通過關鍵字過濾 tail f filename.log grep 關鍵字 通過管道 結合查詢命令迴圈讀取最新寫入日誌 ctrl c中斷...

Linux檢視日誌命令

1 cat命令 功能 1 顯示整個檔案。示例 cat filename 2 把檔案串連線後傳到基本輸出,如將幾個檔案合併為乙個檔案或輸出到螢幕。示例 cat file1 file2 file 說明 把檔案串連線後傳到基本輸出 螢幕或加 filename 到另乙個檔案 cat引數詳解 n 或 numb...

Linux檢視日誌命令

1 cat命令 功能 1 顯示整個檔案。示例 cat filename 2 把檔案串連線後傳到基本輸出,如將幾個檔案合併為乙個檔案或輸出到螢幕。示例 cat file1 file2 file 說明 把檔案串連線後傳到基本輸出 螢幕或加 filename 到另乙個檔案 cat引數詳解 n 或 numb...