Linux 6種日誌查看方法,不會看日誌會被鄙視的

做爲一名後端程序員,和Linux打交道的地方不少,不會看Linux日誌,很是容易受到來自同事和麪試官的嘲諷,因此掌握一種或者幾種查看日誌的方法很是重要。javascript

Linux查看日誌的命令有多種: tail、cat、tac、head、echo等,本文只介紹幾種經常使用的方法。java

一、tail

這個是我最經常使用的一種查看方式linux

命令格式: tail[必要參數][選擇參數][文件]
-f 循環讀取
-q 不顯示處理信息
-v 顯示詳細的處理信息
-c<數目> 顯示的字節數
-n<行數> 顯示行數
-q, --quiet, --silent 從不輸出給出文件名的首部
-s, --sleep-interval=S 與-f合用,表示在每次反覆的間隔休眠S秒

用法以下:程序員

tail  -n  10   test.log   查詢日誌尾部最後10行的日誌;
tail  -n +10   test.log   查詢10行以後的全部日誌;
tail  -fn 10   test.log   循環實時查看最後1000行記錄(最經常使用的)

通常還會配合着grep用,例如 :面試

tail -fn 1000 test.log | grep '關鍵字'

若是一次性查詢的數據量太大,能夠進行翻頁查看,例如:後端

tail -n 4700  aa.log |more -1000 能夠進行多屏顯示(ctrl + f 或者 空格鍵能夠快捷鍵)

跟tail是相反的head是看前多少行日誌安全

head -n  10  test.log   查詢日誌文件中的頭10行日誌;
head -n -10  test.log   查詢日誌文件除了最後10行的其餘全部日誌;

head其餘參數參考tail網絡

三、cat

cat 是由第一行到最後一行連續顯示在屏幕上多線程

一次顯示整個文件 :less

$ cat filename

從鍵盤建立一個文件 :

$cat > filename

將幾個文件合併爲一個文件:

$cat file1 file2 > file 只能建立新文件,不能編輯已有文件.

將一個日誌文件的內容追加到另一個 :

$cat -n textfile1 > textfile2

清空一個日誌文件:

$cat : >textfile2

注意:> 意思是建立,>>是追加。千萬不要弄混了。
cat其餘參數參考tail

四、more

more命令是一個基於vi編輯器文本過濾器,它以全屏幕的方式按頁顯示文本文件的內容,支持vi中的關鍵字定位操做。more名單中內置了若干快捷鍵,經常使用的有H(得到幫助信息),Enter(向下翻滾一行),空格(向下滾動一屏),Q(退出命令)。more命令從前向後讀取文件,所以在啓動時就加載整個文件。

該命令一次顯示一屏文本,滿屏後停下來,而且在屏幕的底部出現一個提示信息,給出至今己顯示的該文件的百分比:–More–(XX%)

more的語法:more 文件名
Enter 向下n行,須要定義,默認爲1行
Ctrl f 向下滾動一屏
空格鍵 向下滾動一屏
Ctrl b 返回上一屏
= 輸出當前行的行號
:f 輸出文件名和當前行的行號
v 調用vi編輯器
!命令 調用Shell,並執行命令
q退出more

五、sed

這個命令能夠查找日誌文件特定的一段 , 根據時間的一個範圍查詢,能夠按照行號和時間範圍查詢

按照行號

sed -n '5,10p' filename 這樣你就能夠只查看文件的第5行到第10行。

按照時間段

sed -n '/2014-12-17 16:17:20/,/2014-12-17 16:17:36/p'  test.log

六、less

less命令在查詢日誌時,通常流程是這樣的

less log.log

shift + G 命令到文件尾部  而後輸入 ?加上你要搜索的關鍵字例如 ?1213

按 n 向上查找關鍵字

shift+n  反向查找關鍵字
less與more相似,使用less能夠隨意瀏覽文件,而more僅能向前移動,不能向後移動,並且 less 在查看以前不會加載整個文件。
less log2013.log 查看文件
ps -ef | less   ps查看進程信息並經過less分頁顯示
history | less   查看命令歷史使用記錄並經過less分頁顯示
less log2013.log log2014.log   瀏覽多個文件

經常使用命令參數:

less與more相似,使用less能夠隨意瀏覽文件,而more僅能向前移動,不能向後移動,並且 less 在查看以前不會加載整個文件。
less log2013.log 查看文件
ps -ef | less   ps查看進程信息並經過less分頁顯示
history | less   查看命令歷史使用記錄並經過less分頁顯示
less log2013.log log2014.log   瀏覽多個文件
經常使用命令參數:
-b <緩衝區大小> 設置緩衝區的大小
-g 只標誌最後搜索的關鍵詞
-i 忽略搜索時的大小寫
-m 顯示相似more命令的百分比
-N 顯示每行的行號
-o <文件名> 將less 輸出的內容在指定文件中保存起來
-Q 不使用警告音
-s 顯示連續空行爲一行
/字符串:向下搜索"字符串"的功能
?字符串:向上搜索"字符串"的功能
n:重複前一個搜索(與 / 或 ? 有關)
N:反向重複前一個搜索(與 / 或 ? 有關)
b 向後翻一頁
h 顯示幫助界面
q 退出less 命令

通常本人查日誌配合應用的其餘命令

history // 全部的歷史記錄

history | grep XXX  // 歷史記錄中包含某些指令的記錄

history | more // 分頁查看記錄

history -c // 清空全部的歷史記錄

!! 重複執行上一個命令

查詢出來記錄後選中 : !323

linux日誌文件說明

/var/log/message 系統啓動後的信息和錯誤日誌,是Red Hat Linux中最經常使用的日誌之一
/var/log/secure 與安全相關的日誌信息
/var/log/maillog 與郵件相關的日誌信息
/var/log/cron 與定時任務相關的日誌信息
/var/log/spooler 與UUCP和news設備相關的日誌信息
/var/log/boot.log 守護進程啓動和中止相關的日誌消息
/var/log/wtmp 該日誌文件永久記錄每一個用戶登陸、註銷及系統的啓動、停機的事件

水文一篇沒什麼含金量,只爲給你們溫習一下功課


WeChat:關注公重號:【程序員內點事】,免費獲取2000G學習資料,內含精選面試題,SSM、Spring全家桶、微服務、MySQL、MyCat、集羣、分佈式、中間件、Linux、網絡、多線程,Jenkins、Nexus、Docker、ELK等等免費學習視頻,持續更新!

相關文章
相關標籤/搜索