1 #
   2 # matching the following output specified as a pattern that verifies
   3 # that the numerical values conform to a specific pattern, rather than
   4 # specific values.
   5 #
   6 # NGCMN    NGCMX     NGC     S0C   S1C       EC      OGCMN      OGCMX       OGC         OC      MCMN     MCMX      MC     YGC    FGC 
   7 #  2176.0   7232.0   2176.0   64.0   64.0   2048.0     6016.0    58304.0     6016.0     6016.0   8192.0  65536.0   8192.0   8192.0      0
   8 
   9 
  10 BEGIN   {
  11             headerlines=0; datalines=0; totallines=0
  12         }
  13 
  14 /^ NGCMN    NGCMX     NGC     S0C   S1C       EC      OGCMN      OGCMX       OGC         OC       MCMN     MCMX      MC     YGC    FGC $/       {
  15             headerlines++;
  16         }
  17 
  18 /^[ ]*[0-9]+\.[0-9]+[ ]*[0-9]+\.[0-9]+[ ]*[0-9]+\.[0-9]+[ ]*[0-9]+\.[0-9]+[ ]*[0-9]+\.[0-9]+[ ]*[0-9]+\.[0-9]+[ ]*[0-9]+\.[0-9]+[ ]*[0-9]+\.[0-9]+[ ]*[0-9]+\.[0-9]+[ ]*[0-9]+\.[0-9]+[ ]*[0-9]+\.[0-9]+[ ]*[0-9]+\.[0-9]+[ ]*[0-9]+\.[0-9]+[ ]*[0-9]+[ ]*[0-9]+$/      {
  19             datalines++;
  20         }
  21 
  22         { totallines++; print $0 }
  23 
  24 END     {
  25             if ((headerlines == 1) && (datalines == 1) && (totallines == 2)) {
  26                 exit 0
  27             }
  28             else {
  29                 exit 1
  30             }
  31         }