You got my brain working on this! And it's too bad/soo sad that I don't have a Linux box in front of me! Arg!
Anyway, I found a page that explains how awk interprets comparisons (whether string or numeric): http://ou800doc.caldera.com/en/SDK_tools/P_NumStr.html
So, from what I read, I believe that if awk is comparing "6.7M" with "5.0" it'll compare it numerically, just like we want. Here's the quote:
The numeric value of a string is the value of any prefix of the string that looks numeric; thus the value of 12.34x is 12.34, while the value of x12.34 is zero. The string value of an arithmetic expression is computed by formatting the string with the output format conversion OFMT.
If you've never used awk before, just know that $1 is the variable for the first field, $2 is for the second field, etc. And $0 is for the whole line. So, because I wouldn't know which field it is that the number is at, I couldn't write the exact command for you. But you can figure that out.
Let me know what you figure out.
-- the dudemaN DAVEEe