一、常用查看日志命令:
1、tail
1、命令格式:
tail 必要參數 文件
2、命令功能
tail 用於顯示指定文件末尾內容,不指定文件時,作為輸入信息進行處理。常用於查看日志文件后多少行日志信息。
使用tail -f 可以查看動態日志文件,tail -f filename可以把filename里最尾部的內容顯示在屏幕上,並且不斷刷新,使你看到最新的文件內容.
tail -n 行數 可以顯示指定行數信息
-f 循環讀取
-q 不顯示處理信息
-v 顯示詳細的處理信息
-c<數目> 顯示的字節數
-n<行數> 顯示行數 (相當於nl命令)
–pid=PID 與-f合用,表示在進程ID,PID死掉之后結束.
-q, –quiet, –silent 從不輸出給出文件名的首部
-s, –sleep-interval=S 與-f合用,表示在每次反復的間隔休眠S秒
3、示例
(1)實時監控100行日志
tail -100f test.log
(2)實時監控日志文件
tail -f test.log
(3)查詢日志尾部最后10行的日志
tail -n 10 test.log
(4)查詢10行之后的所有日志
tail -n +10 test.log
2、head
1、命令格式
head 必要參數 文件
2、命令功能
主要是查看日志文件前多少行日志信息
3、示例
(1)查詢日志文件中的頭10行日志;
head -n 10 test.log
(2)查詢日志文件除了最后10行的其他所有日志
head -n -10 test.log
3、cat
1、命令格式
cat 必要參數 文件
2、命令功能
cat本身就是常用查看文件的命令,可以用於查看日志文件日志信息
cat -n test.log |grep "debug" 查詢關鍵字的日志
grep關鍵字用於過濾
cat test.log | grep ‘關鍵字1’ | grep ‘關鍵字2’ 查詢兩個關鍵字同時出現
3、示例
1、按行號查看---過濾出關鍵字附近的日志
> cat -n test.log |grep "debug"
得到關鍵日志的行號
> cat -n test.log |tail -n +100|head -n 20
選擇關鍵字所在中間行,查看這個關鍵字前10行和后10行的日志:
tail -n +100表示查詢100行之后的日志
head -n 20 則表示在前面的查詢結果里再查前20條記錄
2、根據日期查詢日志
> grep '2014-12-17 16:17:20' test.log
首先確定日志中是否有該時間,然后再查詢
> sed -n '/2019-12-17 16:17:20/,/2020-12-17 16:17:36' test.log
日期必須是日志中打印出來的日志,否則無效
3、日志內容特別多,打印在屏幕上不方便查看時分頁或者保存到文件中
(1)使用more和less命令
cat -n test.log |grep "debug" |more
分頁打印了,通過點擊空格鍵翻頁
(2)使用 >xxx.txt 將其保存到文件中,到時可以拉下這個文件分析
cat -n test.log |grep "debug" >debug.txt