Unix grep今天发生的特定单词的日志文件

Unix grep今天发生的特定单词的日志文件,unix,Unix,我必须搜索我们在当前日期收到任何特定例外情况的次数。我正在使用下面的命令,但它不起作用 此命令显示到目前为止发生的ClassCastException或NumberFormatException 我只是想知道今天的日期发生了多少次ClassCastException或NumberFormatException grep $(date +"%Y-%m-%d") /*.* |grep -ioh "ClasscastException\|NumberFormatException" /logs/*.

我必须搜索我们在当前日期收到任何特定例外情况的次数。我正在使用下面的命令,但它不起作用

此命令显示到目前为止发生的
ClassCastException
NumberFormatException

我只是想知道今天的日期发生了多少次
ClassCastException
NumberFormatException

grep $(date +"%Y-%m-%d") /*.* |grep  -ioh "ClasscastException\|NumberFormatException" /logs/*.* | sort | uniq -c | sort -r

grep -ioh "ClasscastException\|NumberFormatException" /logs/*.* | sort | uniq -c | sort -r

上面的命令给出了日志文件中所有日期的ClassCastException和NumberFormatException的计数。我只想知道今天的日期计数。

删除
/logs/*.*.
部分后,第一个命令应该会起作用


grep$(日期+%Y-%m-%d)/∗.∗ |grep-ioh“ClasscastException\| NumberFormatException”/logs/∗.∗ | 排序| uniq-c |排序-r

grep处理作为参数提供的文件,否则,它默认为
stdin


由于文件作为参数提供给此管道中的第二个grep,因此它将丢弃第一个grep的输出,并在日志目录下的所有文件中再次查找模式。

/log/*.*是日志文件目录路径。应该搜索unix日志/目录下的所有日志文件。然后可以用它启动整个命令行,如下所示:
grep$(date+%Y-%m-%d)/log/∗.∗ | grep-ioh“ClasscastException\ | NumberFormatException”| sort | uniq-c | sort-r
grep$(date+%Y-%m-%d)/apps/logs/*.*grep-ioh“Exception”| sort | uniq-c | sort-rgrep$(date+%Y-%m-%d)/apps/*.*grep-ioh“Exception”| sort | uniq-c | sort-r。这看起来很好用。在日志文件中,某些内容与当前日期不一致。它们在当前日期行下。我有没有办法搜索当前日期以下的数据?示例数据如下错误2015-10-31 18:39:25817[[pausedEventAssetPollConnector.receiver.02]org.mule.exception.DefaultMessaginExceptionStrategy:*异常堆栈为:1.java.lang。ClassCastException@6ba3ac7b(java.lang.IllegalArgumentException)所以一个日志条目跨越多行?你能用日志文件中的详细示例更新这个问题吗?每个条目有多少行?条目的开头和结尾是什么,等等。grep可能不足以解决这个问题,你可能必须使用awk、pcregrep或perl等。