2012-11-30 24 views
0

日誌,我想檢查經過時間的rsnapshot,目錄刪除過程測量經過時間在BASH

Rsnapshot日誌格式(我使用grep過濾此):

cat /var/log/rsnapshot | grep -A 1 "/bin/rm" 

[21/Nov/2012:07:41:24] /bin/rm -rf /mnt/sdb/rsnapshot/daily.delete/ 
[21/Nov/2012:09:47:50] WARNING: /usr/local/bin/rsnapshot -v daily: completed, but with some warnings 

那麼時間只有:

cat /var/log/rsnapshot | grep -A 1 "/bin/rm" | awk '{ print $1 }' | cut -b 14-21 | uniq 
07:41:24 
09:47:50 

但是我不知道如何使用date命令來減去時間。

請讓我知道在BASH中是否有更好/更有效的方法,因爲我仍處於學習曲線。與

回答

2

使用日期命令語法如下:

NEW=`date --date "$NEW_DATE" +%s` 
OLD=`date --date "$OLD_DATE" +%s` 
diff=$((NEW-OLD)) 

這會給你的區別在數秒內 然後你就可以輕鬆拍攝模60分離秒,小時,分鐘等