{ grep -m1 match; grep -c ''; } <file
Isso funcionará com GNU grep e um infil lseek() able. O primeiro grep parará em 1 -m atch e o segundo% em relação a cada linha restante na entrada.
Sem GNU -c :
{ sed '/match/q'; grep -c ''; } <file
Claro, w / grep você pode usar qualquer / todas as suas outras opções além, e parar em uma partida não é de todo necessário.