错误字符串catch:使用grep命令进行冗余

时间:2012-05-02 12:02:44

标签: unix aix

目前我使用以下命令捕获MY_FILE_NAME * .log

中的错误字符串
Currentdate=`date -u +"%Y/%m/%d"`
YEST=`TZ=XYZ+24 date '+%Y/%m/%d'`

grep -E "$Currentdate|$YEST"  MY_FILE_NAME*.log |  grep "Type: Error"

此命令生成大量数据,字符串为“Type:Error”,冗余在同一错误类型中(在我的情况下,相同的错误显示为100次)

我希望只显示一次相同类型的错误字符串

1 个答案:

答案 0 :(得分:1)

如果使用GNU / Linux,请尝试'-m'开关

grep -m 1 -E "$Currentdate|$YEST"  MY_FILE_NAME*.log |  grep "Type: Error"

在GNU版本的grep中,'-m'开关在找到匹配项后停止读取输入文件。在构建AIX和类似的旧的Unix grep中不存在此功能。

如果在AIX上没有-m或-B,请参阅this StackOvreflow post