#!/bin/sh set -x PATTERN="are definitely|uninitialised|Unhandled exception|Invalid read|Invalid write|Invalid free|Source and desti|Mismatched free|unaddressable byte|vex x86|impossible|Assertion|INTERNAL ERROR|Terminated" for a in *.log do name=`basename $a .log` grep == $a | egrep "$PATTERN" | sed 's/==.*== //;s/(.*) *//;s/in loss record.*//;s/^[0-9][0-9,]* *bytes/XXX bytes/g;s/in [0-9][0-9,]* blocks*/in XXX blocks/g' | sort | uniq -c | sort -n > $name.errs.txt done