J. Duke | 319a3b9 | 2007-12-01 00:00:00 +0000 | [diff] [blame^] | 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 | # S0 S1 E O P YGC YGCT FGC FGCT GCT |
| 7 | # 0.00 99.99 66.81 1.24 26.55 1 0.028 0 0.000 0.028 |
| 8 | # 0.00 99.99 68.81 1.24 27.84 1 0.028 0 0.000 0.028 |
| 9 | # 0.00 99.99 70.81 1.24 27.84 1 0.028 0 0.000 0.028 |
| 10 | # 0.00 99.99 70.81 1.24 27.84 1 0.028 0 0.000 0.028 |
| 11 | # 0.00 99.99 70.81 1.24 27.84 1 0.028 0 0.000 0.028 |
| 12 | # 0.00 99.99 72.81 1.24 27.84 1 0.028 0 0.000 0.028 |
| 13 | # 0.00 99.99 72.81 1.24 27.84 1 0.028 0 0.000 0.028 |
| 14 | # 0.00 99.99 74.81 1.24 27.84 1 0.028 0 0.000 0.028 |
| 15 | # 0.00 99.99 74.81 1.24 27.84 1 0.028 0 0.000 0.028 |
| 16 | # 0.00 99.99 76.81 1.24 27.85 1 0.028 0 0.000 0.028 |
| 17 | # S0 S1 E O P YGC YGCT FGC FGCT GCT |
| 18 | # 0.00 99.99 76.81 1.24 27.85 1 0.028 0 0.000 0.028 |
| 19 | |
| 20 | BEGIN { |
| 21 | headerlines=0; datalines=0; totallines=0 |
| 22 | datalines2=0; |
| 23 | } |
| 24 | |
| 25 | /^ S0 S1 E O P YGC YGCT FGC FGCT GCT $/ { |
| 26 | headerlines++; |
| 27 | } |
| 28 | |
| 29 | /^[ ]*[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]+$/ { |
| 30 | if (headerlines == 2) { |
| 31 | datalines2++; |
| 32 | } |
| 33 | datalines++; |
| 34 | } |
| 35 | |
| 36 | { totallines++; print $0 } |
| 37 | |
| 38 | END { |
| 39 | if ((headerlines == 2) && (datalines == 11) && (totallines == 13) && (datalines2 == 1)) { |
| 40 | exit 0 |
| 41 | } else { |
| 42 | exit 1 |
| 43 | } |
| 44 | } |