linux定向查日志_linux日志查找技巧
基礎(chǔ)命令
# 查詢?nèi)罩疚膊孔詈?0行的日志;
tail -n 10 test.log
#查詢10行之后的所有日志;
tail -n +10 test.log
# 查詢?nèi)罩疚募械念^10行日志;
head -n 10 test.log
# 查詢?nèi)罩疚募俗詈?0行的其他所有日志;
head -n -10 test.log
# 查看日志的尾部,并刷新顯示日志變動(dòng)。此方法適合在調(diào)試程序的時(shí)候查看日志,日志變動(dòng)會(huì)實(shí)時(shí)刷新顯示到終端。
tail -f test.log
按行號(hào)查看---過濾出關(guān)鍵字附近的日志
通常時(shí)候我們用grep拿到的日志只有關(guān)鍵字所在行, 而我們需要查看關(guān)鍵字附近的日志.
首先: cat -n test.log |grep "keyword" 得到關(guān)鍵日志的行號(hào)
然后,得到"keyword"關(guān)鍵字所在的行號(hào)是102行. 此時(shí)如果想查看這個(gè)關(guān)鍵字前10行和后10行的日志:
cat -n test.log |tail -n +92|head -n 20
tail -n +92表示查詢92行之后的日志
head -n 20 則表示在前面的查詢結(jié)果里再查前20條記錄
按日期查看---查找指定時(shí)間段的日志
sed -n '/2014-12-17 16:17:20/,/2014-12-17 16:17:36/p' test.log
特別說明:上面的兩個(gè)日期必須是日志中打印出來的日志,否則無效.
關(guān)于日期打印,可以先 grep '2014-12-17 16:17:20' test.log 來確定日志中是否有該時(shí)間點(diǎn),以確保可以拿到日志
如果查找的日志很多,打印在屏幕上不方便查看, 有兩個(gè)方法
使用more和less命令, 如: cat -n test.log |grep "keyword" |more 這樣就分頁打印, 通過點(diǎn)擊空格鍵翻頁
使用 重定向符>xxx.txt 將其保存到文件中,到時(shí)可以拉下這個(gè)文件分析.如:
cat -n test.log |grep "地形" >xxx.txt
可以將包含關(guān)鍵字的日志復(fù)制到xxx.txt文件中保存。
(重定向符>xxx.txt是將內(nèi)容輸入并覆蓋xxx.txt原來的內(nèi)容, >>是追加到文件)
在當(dāng)前文件夾下的所有文件中查找關(guān)鍵字
grep 'xxx' `find /file_dir -name '*.*'` (/file_dir 為.代表當(dāng)前目錄)
# 例如在當(dāng)前目錄下查找關(guān)鍵字:keyw
grep 'keyw' `find . -name '*.*'`
總結(jié)
以上是生活随笔為你收集整理的linux定向查日志_linux日志查找技巧的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: leetcode 75 --- sort
- 下一篇: linux mpeg-4,嵌入式MPEG