tail f grep 的配合使用

2021-09-11 22:57:21 字數 645 閱讀 7687

對日誌記錄做多次grep過濾輸出,格式如下:

tail -f log | grep *** | grep yyy

發現grep失效,無法做正確輸出。google研究了一下,原因如下:

管道 | 是全緩衝的,一般來說buffer_size為4096,有些是8192。不管具體值多少,只有buffer_size滿了,才會看到輸出。

在操作裡 >>file 這個操作也是全緩衝的。調整如下

tail -f log | grep --line-buffer *** | grep --line-buffer yyy

結果輸出正常。

grep當帶上了 --line-buffer 的時候,每輸出一行,就重新整理一次。

在unix裡,塊裝置和普通檔案,以及管道都是全緩衝的。

對日誌分析告警和實時監控可以考慮如下形式:

tail -f log

f∣wh

iler

eadv

ardo

case

"logf | while read var do case "

logf∣w

hile

read

vard

ocas

e"var" in……

esac

done

配合 GitHub Git 的基礎使用

第一步 在本機上操作 1 安裝 git 客戶端 如何安裝不同作業系統的 git 客戶端,參見 2 開啟 git bash,開始鍵入各種配置資訊 git config global user.name you name git config global user.email yourmail ser...

svg 配合cesium使用

恢復內容開始 1 svg簡介 在 2003 年一月,svg 1.1 被確立為 w3c 標準。參與定義 svg 的組織有 太陽微系統 adobe 蘋果公司 ibm 以及柯達。與其他影象格式相比,使用 svg 的優勢在於 svg 的主要競爭者是 flash。與 flash 相比,svg 最大的優勢是與其...

break配合標記使用

public class demo system.out.println system.out.println 1 單層forxun迴圈 使用標記 tag for int x 0 x 10 x system.out.println system.out.println 2 雙層forxun迴圈 不使...