我有在日誌目錄中的多個訪問日誌,下面的命名約定如下:如何將多個日誌文件視爲Perl中的一個虛擬文件?
access.log.1284642120
access.log.1284687600
access.log.1284843260
基本上,日誌是「旋轉」,由每天的Apache,這樣他們就可以在順序排序。
我試圖「一個接一個地閱讀它們」,以便它們可以被視爲一個日誌文件。
my @logs = glob('logs/access.log.*');
上面的代碼將所有glob的日誌,但我不知道:
- 以何種順序將日誌組織,按字母順序?
- 如果我想檢查「來自獨特IP的最新訪問時間」,我該怎麼做?
我有一個Perl腳本,可以讀一個單一的訪問日誌,方便地檢查這個(我的算法是有它使用IP地址作爲密鑰和訪問時間值大的亂碼,只是不停推鍵/值對...)。 但我不想只將這個過程中的所有訪問文件合併到一個臨時文件中。
有什麼建議嗎?提前謝謝了。
+1標點。就像金屬樂隊一樣,SO的回答對變音器來說更好。 – FMc 2010-09-18 12:09:09
您還可以獲得'$ .'的魔力,跟蹤當前文件的當前行號。 – mob 2010-09-18 18:19:11