0

我想检查 rsnapshot 的经过时间,目录删除过程

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 中执行此操作,因为我仍在学习曲线上。

4

1 回答 1

2

使用具有以下语法的日期命令:

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

这会给你几秒钟的差异......然后你可以轻松地取模 60 来分隔秒、小时、分钟等。

于 2012-11-30T10:35:18.780 回答