一些查日誌的技巧記錄

2021-10-08 17:25:58 字數 2486 閱讀 5189

檢視log.log日誌檔案(實時滾動重新整理)

tail -f log.log

通用的查日誌方式 ,使用less進入日誌檔案

比如檢視當前目錄下的console.log檔案

less console.log

# 查詢某個關鍵字, 使用/或者?,其中/是從當前位置往下查詢, ?是往上查詢

用 n 向前查詢, n 向後查詢

用 b 往前翻頁 , f 往後翻頁

用 g 跳到檔案結尾, g 跳到檔案開頭

有時候, 我們需要根據名稱來查詢相關的檔案

比如查詢名稱以console開頭的檔案,可以使用如下的find命令

find

. -name 'console*'

其中.表示從當前目錄往下查詢, 如果需要全域性查詢(從根目錄開始查詢),則使用

find / -name 'console*'

也可以用locate命令, locate命令比find -name 更快, 但是會有延遲更新

locate console

有時候我們需要在多個日誌檔案中查詢某個關鍵字

可以使用find結合grep

# 從當前目錄往下查詢, 查詢包含字串 confirm 的檔案(檔案型別為f表示只查詢檔案, 而不查詢目錄), 並列印

# -name 和 -type 引數可以同時使用

下面是從當前目錄開始查詢全部檔案, 並搜尋其中帶有 confirm 關鍵字的內容

find

. -type f |

xargs

grep

'confirm'

上面的命令會同時列出檔名和日誌資訊

如果只想定位檔名(只想知道某個關鍵字出現在哪個日誌檔案中), 可以結合 cut 命令

find

. -type f -name 'console*'

|xargs

grep

'confirm'

|cut -f1 -d':'

cut 的 -d':' 表示以 : 為分隔符對字串進行切割, -f1 表示保留切割得到的字串陣列的第乙個

加上 uniq 命令對檔名進行去重

find

. -type f -name 'console*'

|xargs

grep

'confirm'

|cut -f1 -d':'

|uniq

加上 sort 命令對檔名進行排序

find

. -type f -name 'console*'

|xargs

grep

'confirm'

|cut -f1 -d':'

|uniq

|sort

uniq後面還可以跟 -c 引數, 可以計數

如果符合條件的檔案數太多, 則可以只列出前n行,比如只列出前10行

find

. -type f -name 'console*'

|xargs

grep

'confirm'

|cut -f1 -d':'

|uniq

|head -n 10

find 預設是遞迴查詢所有檔案子目錄, 若只希望往下查詢一級目錄, 可以通過maxdepth 引數來指定

find

. -type f -name 'console*' -maxdepth 2

若希望查詢不滿足某條件, 則可以用not, 進行反向查詢

find

. -not -name 'console*'

如果要查的日誌是壓縮檔案,需要把 grep 替換成 zgrep

grep 可以增加引數, 比如下面的命令,可以查詢console.log檔案**現confirm關鍵字的上下5行的資訊

grep -c 5 'confirm' console.log

統計次數可以使用

wc -l

設定命令別名可以用

alias ll=

'ls -l'

通常用如下命令即可快速查詢包含某一字串的日誌檔案(按照日誌檔名稱排序),假設日誌檔案放在當前目錄的logs目錄下

find ./logs/ -name console* |

xargs

grep

'301'

|cut -f1 -d ':'

|uniq

|sort

使用grep查詢 大日誌檔案 中的某個關鍵字

檢視關鍵字前後5行的內容 grep -c 5 nullpointerexception start.log

檢視關鍵字後面5行的內容 grep -a 5 nullpointerexception start.log

檢視關鍵字前面5行的內容 grep -b 5 nullpointerexception start.log

-o 表示只輸出匹配部分

grep -o fullgc gc.log |

wc -l

一些css 技巧的記錄

記錄一下,忘記的時候翻一翻的css 技巧。1.input 輸入框的樣式 如下,box sizing 設為border box 且 左右 padding 有.1rem 這樣子輸入框內部就可以有乙個比較友好的內邊距。search input box sizing border box width 100...

Vim的一些技巧記錄

gf快捷鍵跳轉到對應文件指定的行數 在vimrc中新增以下 段 function gotofilewithlinenum let bak isfname isfname set isfname 48 57,let line number 0 let file name expand echo fil...

《關於日誌記錄的一些感想》摘記

1.講到了j a 中眾多的開源日誌框架,重點講到了我現階段也感興趣和接觸過的 slf4j slf4j 不包含日誌的實現,但是提供了眾多的介面卡來適配其他所有的開源日誌框架,這樣,在開發中我們只需要在 中面對它的 api 即可,實現任意的切換。好處 我們的專案往往會依賴很多的第三方開源框架,而這些開源...