Linux基礎命令之tail動態顯示日誌文件時關鍵字有顏色、高亮顯示

這玩意找了好久,有一次面試官問過,如何 在tail -f 的時候 動態顯示catalina.out時,查找關鍵字。當然在Xshell中你可以右鍵查找,或者Ctrl+Shift+F進行區分大小寫或者匹配正則表達式的方式來查詢。但是 如何用命令呢? tail 是動態的。這個問題,我只回答了不知道。不知道就代表out~

前言

如果你在linux下工作,那用tail -f跟蹤一個日誌文件的輸出內容應該是家常便飯了。

但是,有時你更關心的是一些敏感字詞,希望能夠在動態跟蹤的同時,把這些字詞高亮出來,比如日誌中的 ERROR 關鍵字。

那麼,一種思路就是把你tail輸出的東西再做一次包裝處理,這個很符合linux管道處理的思想。

tail

相關命令介紹可以點擊:https://blog.csdn.net/Soinice/article/details/80842332

Linux下使用tail查找日誌文件關鍵詞高亮顯示

單個關鍵詞高亮顯示

tail -f 日誌文件 | perl -pe 's/(關鍵詞)/\e[1;顏色$1\e[0m/g'
tail -f catalina.out | perl -pe 's/(DEBUG)/\e[1;34m$1\e[0m/g'

多個關鍵詞高亮顯示

tail -f catalina.out | perl -pe 's/(關鍵詞1)|(關鍵詞2)|(關鍵詞3)/\e[1;顏色1$1\e[0m\e[1;顏色2$2\e[0m\e[1;顏色3$3\e[0m/g' 
tail -f catalina.out | perl -pe 's/(DEBUG)|(INFO)|(ERROR)/\e[1;34m$1\e[0m\e[1;33m$2\e[0m\e[1;31m$3\e[0m/g' 

備註: 匹配關鍵詞使用的是正則表達式

字體顏色設置

30-37 黑、紅、綠、黃、藍、紫、青、白 

  • 30m:黑 
  • 31m:紅 
  • 32m:綠 
  • 33m:黃 
  • 34m:藍 
  • 35m:紫 
  • 36m:青 
  • 37m:白

背景顏色設置

40-47 黑、紅、綠、黃、藍、紫、青、白 

  • 40:黑 
  • 41:紅 
  • 42:綠 
  • 43:黃 
  • 44:藍 
  • 45:紫 
  • 46:青 
  • 47:白

其他參數說明

[1; 設置高亮加粗 
[4; 下劃線 
[5; 閃爍

例子: 
黃字,高亮加粗顯示 
[1;33m 
紅底黃字,高亮加粗顯示 
[1;41;33m

文章參考,如侵聯刪:

https://www.cnblogs.com/Detector/p/7246377.html

https://blog.csdn.net/qq_27686779/article/details/81180254

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章