【引言】
排查線上環境問題,少不了去線上查日誌。而使用什麼命令,能快速準確地查到我們需要查詢地日誌資訊,也是我們需要掌握的一項技能。
【學習】
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...