1

我正在通过 ksh 脚本定义我的时间变量:

NOW="$(date +"%I:%OM")"
LASTHOUR="$(date +%I:%OM --date "last hour")"

我的日志输出包含以下格式:

019723  01/22 01:00  err  PoolEndorseServ::notify   Error while notifying in...
019722  01/22 00:00  err  PoolEndorseServ::notify   Error while notifying in...
019722  01/21 05:10  err  PoolEndorseServ::notify   Error while notifying in...

我希望能够通过查看时间列来提取大于 $LASTHOUR 的任何记录。

任何帮助或指导表示赞赏。

4

1 回答 1

0

我假设您的时间字段是 24 小时格式。

awk

awk -v LASTHOUR="$(date --date "last hour" "+%m/%d %H:%0M")" \
  '$2" "$3 > LASTHOUR' < yourfile

不过,如果是 1 月 1 日的第一个小时,这将中断。这无济于事,因为您没有在日志中提供年份。

于 2013-01-22T07:35:35.873 回答