Log-Files

grep 日期範圍 - apache 日誌

  • December 10, 2010

我想知道如何執行以下 greps:

  • grep Apache 日誌僅適用於一系列日期,假設從 2010 年 11 月 5 日到 2010 年 12 月 5 日

  • grep Apache 日誌,從 `15/Nov/2010 開始,直到最後一個日誌條目。

謝謝

我將以相反的順序回答這些問題:

grep Apache 日誌,從 `15/Nov/2010 開始,直到最後一個日誌條目。

這不需要任何類型的日期解析,並且可以通過以下方式輕鬆完成sed

# sed -n '/15\/Nov\/2010/,$ p' /path/to/access_log

這告訴說要顯示從文件末尾p開始的行 ( ) ( )。15/Nov/2010``$

grep Apache 日誌僅適用於一系列日期,假設從 2010 年 11 月 5 日到 2010 年 12 月 5 日

這幾乎是相同的,但不是在文件末尾顯示行,而是希望在到達第二個日期時停止列印行。你可以嘗試這樣的事情:

# sed -n '/5\/Nov\/2010/,/5\/Dec\/2010/ p'

請注意,在這兩個範例中,我都在轉義/字元,因為sed使用它們來分隔正則表達式。

引用自:https://serverfault.com/questions/211400