我正在嘗試製作一個能夠觀看某些日誌的腳本。我有一個請求日誌與每個請求格式化這樣的事情,GNU awk中的緩衝區記錄
---
id=273482
Result=Error
---
id=342345
Result=Success
---
第二個日誌,其中每行都有請求的ID。我需要實時觀看請求日誌並將其與第二個日誌交叉引用。
tail -f requestLog | awk \"BEGIN { RS = \"---\" } /Error/\" | grep --line-buffered id | sed -u ...
我尾-f requestLog,使用awk在「---」上拆分記錄,然後grep出id行。然後,我將所有內容傳遞給sed -u以提取id和xargs,以便grep第二個日誌中與壞請求相關的行。
問題是結果出來真的延遲了,因爲某些東西(我認爲awk)緩衝錯誤。我怎樣才能使awk讀取輸入不間斷,並在每次看到壞記錄時刷新輸出?順便說一下,我使用的是GNU awk。