Linux查看日志的命令有多種: tail型凳、cat、tac流酬、head币厕、echo等,本文只介紹幾種常用的方法芽腾。
1旦装、tail
這個(gè)是最常用的一種查看方式
命令格式: tail[必要參數(shù)][選擇參數(shù)][文件]
-f 循環(huán)讀取
-q 不顯示處理信息
-v 顯示詳細(xì)的處理信息
-c<數(shù)目> 顯示的字節(jié)數(shù)
-n<行數(shù)> 顯示行數(shù)
-q, --quiet, --silent 從不輸出給出文件名的首部
-s, --sleep-interval=S 與-f合用,表示在每次反復(fù)的間隔休眠S秒
用法如下:
tail -n 10 test.log 查詢(xún)?nèi)罩疚膊孔詈?0行的日志;
tail -n +10 test.log 查詢(xún)10行之后的所有日志;
tail -fn 10 test.log 循環(huán)實(shí)時(shí)查看最后1000行記錄(最常用的)
一般還會(huì)配合著grep用,例如 :
tail -fn 1000 test.log | grep '關(guān)鍵字'
如果一次性查詢(xún)的數(shù)據(jù)量太大,可以進(jìn)行翻頁(yè)查看摊滔,例如:
tail -n 4700 aa.log |more -1000 可以進(jìn)行多屏顯示(ctrl + f 或者 空格鍵可以快捷鍵)
2阴绢、head
跟tail是相反的head是看前多少行日志
head -n 10 test.log 查詢(xún)?nèi)罩疚募械念^10行日志;
head -n -10 test.log 查詢(xún)?nèi)罩疚募俗詈?0行的其他所有日志;
head其他參數(shù)參考tail
3、cat
cat 是由第一行到最后一行連續(xù)顯示在屏幕上
一次顯示整個(gè)文件 :
$ cat filename
從鍵盤(pán)創(chuàng)建一個(gè)文件 :
$cat > filename
將幾個(gè)文件合并為一個(gè)文件:
$cat file1 file2 > file 只能創(chuàng)建新文件,不能編輯已有文件.
將一個(gè)日志文件的內(nèi)容追加到另外一個(gè) :
$cat -n textfile1 > textfile2
清空一個(gè)日志文件:
$cat : >textfile2
注意:> 意思是創(chuàng)建艰躺,>>是追加呻袭。千萬(wàn)不要弄混了。
cat其他參數(shù)參考tail
4腺兴、more
more命令是一個(gè)基于vi編輯器文本過(guò)濾器左电,它以全屏幕的方式按頁(yè)顯示文本文件的內(nèi)容,支持vi中的關(guān)鍵字定位操作。more名單中內(nèi)置了若干快捷鍵券腔,常用的有H(獲得幫助信息)伏穆,Enter(向下翻滾一行),空格(向下滾動(dòng)一屏)纷纫,Q(退出命令)枕扫。more命令從前向后讀取文件,因此在啟動(dòng)時(shí)就加載整個(gè)文件辱魁。
該命令一次顯示一屏文本烟瞧,滿(mǎn)屏后停下來(lái),并且在屏幕的底部出現(xiàn)一個(gè)提示信息染簇,給出至今己顯示的該文件的百分比:–More–(XX%)
more的語(yǔ)法:more 文件名
Enter 向下n行参滴,需要定義,默認(rèn)為1行
Ctrl f 向下滾動(dòng)一屏
空格鍵 向下滾動(dòng)一屏
Ctrl b 返回上一屏
= 輸出當(dāng)前行的行號(hào)
:f 輸出文件名和當(dāng)前行的行號(hào)
v 調(diào)用vi編輯器
!命令 調(diào)用Shell锻弓,并執(zhí)行命令
q退出more
5砾赔、sed
這個(gè)命令可以查找日志文件特定的一段 , 根據(jù)時(shí)間的一個(gè)范圍查詢(xún),可以按照行號(hào)和時(shí)間范圍查詢(xún)
按照行號(hào)
sed -n '5,10p' filename 這樣你就可以只查看文件的第5行到第10行青灼。
按照時(shí)間段
sed -n '/2014-12-17 16:17:20/,/2014-12-17 16:17:36/p' test.log
6暴心、less
less命令在查詢(xún)?nèi)罩緯r(shí),一般流程是這樣的
less log.log
shift + G 命令到文件尾部 然后輸入 杂拨?加上你要搜索的關(guān)鍵字例如 专普?1213
按 n 向上查找關(guān)鍵字
shift+n 反向查找關(guān)鍵字
less與more類(lèi)似,使用less可以隨意瀏覽文件弹沽,而more僅能向前移動(dòng)檀夹,不能向后移動(dòng),而且 less 在查看之前不會(huì)加載整個(gè)文件策橘。
less log2013.log 查看文件
ps -ef | less ps查看進(jìn)程信息并通過(guò)less分頁(yè)顯示
history | less 查看命令歷史使用記錄并通過(guò)less分頁(yè)顯示
less log2013.log log2014.log 瀏覽多個(gè)文件
常用命令參數(shù):
less與more類(lèi)似炸渡,使用less可以隨意瀏覽文件,而more僅能向前移動(dòng)役纹,不能向后移動(dòng)偶摔,而且 less 在查看之前不會(huì)加載整個(gè)文件。
less log2013.log 查看文件
ps -ef | less ps查看進(jìn)程信息并通過(guò)less分頁(yè)顯示
history | less 查看命令歷史使用記錄并通過(guò)less分頁(yè)顯示
less log2013.log log2014.log 瀏覽多個(gè)文件
常用命令參數(shù):
-b <緩沖區(qū)大小> 設(shè)置緩沖區(qū)的大小
-g 只標(biāo)志最后搜索的關(guān)鍵詞
-i 忽略搜索時(shí)的大小寫(xiě)
-m 顯示類(lèi)似more命令的百分比
-N 顯示每行的行號(hào)
-o <文件名> 將less 輸出的內(nèi)容在指定文件中保存起來(lái)
-Q 不使用警告音
-s 顯示連續(xù)空行為一行
/字符串:向下搜索"字符串"的功能
?字符串:向上搜索"字符串"的功能
n:重復(fù)前一個(gè)搜索(與 / 或 ? 有關(guān))
N:反向重復(fù)前一個(gè)搜索(與 / 或 ? 有關(guān))
b 向后翻一頁(yè)
h 顯示幫助界面
q 退出less 命令
一般本人查日志配合應(yīng)用的其他命令
history // 所有的歷史記錄
history | grep XXX // 歷史記錄中包含某些指令的記錄
history | more // 分頁(yè)查看記錄
history -c // 清空所有的歷史記錄
!! 重復(fù)執(zhí)行上一個(gè)命令
查詢(xún)出來(lái)記錄后選中 : !323
linux日志文件說(shuō)明
/var/log/message 系統(tǒng)啟動(dòng)后的信息和錯(cuò)誤日志促脉,是Red Hat Linux中最常用的日志之一
/var/log/secure 與安全相關(guān)的日志信息
/var/log/maillog 與郵件相關(guān)的日志信息
/var/log/cron 與定時(shí)任務(wù)相關(guān)的日志信息
/var/log/spooler 與UUCP和news設(shè)備相關(guān)的日志信息
/var/log/boot.log 守護(hù)進(jìn)程啟動(dòng)和停止相關(guān)的日志消息
/var/log/wtmp 該日志文件永久記錄每個(gè)用戶(hù)登錄辰斋、注銷(xiāo)及系統(tǒng)的啟動(dòng)、停機(jī)的事件