2017-05-22 89 views
1

如何從日誌文件中提取最近一小時的日誌?如何從日誌文件中提取最近一小時的日誌

這是日誌文件

2017-05-22 11:10:20 < ?xml version> 
2017-05-22 11:10:20 < ?xml version> 
2017-05-22 11:10:20 < ?xml version> 
2017-05-22 11:10:20 < ?xml version> 
2017-05-22 11:10:20 < ?xml version> 
2017-05-22 12:10:20 < ?xml version> 
2017-05-22 11:10:20 < ?xml version> 
2017-05-22 12:10:20 < ?xml version> 
sample text sample text 
sample text sample text 
sample text sample text 
sample text sample text 
sample text sample text 
sample text sample text 
sample text sample text 
sample text sample text 
sample text sample text 
2017-05-22 11:10:20 < ?xml version> 
2017-05-22 11:10:20 < ?xml version> 
2017-05-22 11:10:20 < ?xml version> 
2017-05-22 11:10:20 < ?xml version> 
2017-05-22 11:10:20 < ?xml version> 
2017-05-22 12:10:20 < ?xml version> 
2017-05-22 11:10:20 < ?xml version> 
2017-05-22 12:10:20 < ?xml version> 
sample text sample text 
sample text sample text 
sample text sample text 
sample text sample text 
sample text sample text 
sample text sample text 
sample text sample text 
sample text sample text 
sample text sample text 
2017-05-22 12:10:20 < ?xml version> 
sample text sample text 
2017-05-22 12:10:20 < ?xml version> 

假設時間是12:30,所以輸出會像 2017年5月22日12點10分二十秒<?XML版本> 2017年5月22日12 :10:20 < XML版本> 示例文本樣本的文本樣本 文本樣本的文本樣本 文本樣本的文本樣本 文本樣本的文本樣本 文本樣本的文本樣本 文本樣本的文本樣本 文本樣本的文本 示例文本示例文本 示例文本示例文本 2017年5月22日12點10分二十秒<?XML版本> 2017年5月22日12點10分二十秒<?XML版本> 示例文本示例文本 2017- 05-22 12點10分20秒<?XML版本>

我曾嘗試一些選項,但它給我的所有日​​志:-(

grep "^$(date -d -1hour +'%Y-%m-%d %H')" text.log 

sed -e "1,/^$(date -d -1hour +'%Y-%m-%d %H')/d" text.log 

雖然射擊這些查詢它給我的所有日​​志,而不是一個小時。 請給我一些建議?

+1

這是如何與Java有關? – Berger

+0

ru想要某種unix命令或java邏輯 –

+0

我想使用unix命令,我將從java中啓動 – Nirmal

回答

0

給這一個鏡頭:

grep "$(date -v-60M +"%Y-%m-%d %H")" text.log 
+0

這不是正在運行 – Nirmal

+0

您是否正在運行最近的日誌?我只是在我的/var/log/system.log文件上運行該命令,它工作得很好。您可以嘗試在日期命令中轉義引號: 'grep「$(date -v-60M + \」%Y-%m-%d%H \「)」/ var/log/wifi.log' – jrcastle90

相關問題