Selecting rows with a specific criteria

Hi,

I want a UNIX command that can filter out rows with certain criteria.
The file is tab deliminated. Row one is just a value. Basically what I want to do is select based on the name and character at the end (o). So lets lets say i want a row that has WashU and (o) then it would print into another file. Another thing is that the rows vary in size. Is this possible?

eg of the file:

YCR069W	 MIT_Spar_c89_2669 (o)  MIT_Smik_c1224_1803 (p)   MIT_Sbay_c91_2895 (o)   WashU_Scas_Contig720.92 (o)  
YCR071C	 MIT_Spar_c89_2672 (o)  MIT_Smik_c1224_1802 (o)   MIT_Sbay_c91_2899 (p)   WashU_Scas_Contig720.93 (p)   WashU_Skud_Contig1012.1 (o)  WashU_Sklu_Contig2173.3 (o) 

So basically I want to select rows that have WashU at the start and (o) behind it.

Thanks

Phil

I assume that "behind it" means "at the end of the line".

$ 
$ cat data.txt
YCR069W     MIT_Spar_c89_2669 (o)
WashU_Skud_Contig1012.1 (o)
MIT_Sbay_c91_2899 (p)
WashU_Scas_Contig720.93 (p)
$ 
$ awk '/^WashU.*\(o\)$/' data.txt
WashU_Skud_Contig1012.1 (o)
$ 

tyler_durden

cat testfile | grep "^WashU" | grep "(o)$"

display the file
grab lines that start with WashU
grab lines that end with (o)