você pode usar a opção -An do grep para obter n linhas após a partida, então, para o seu exemplo, seria
grep -A20 "09:55:21,651" mylog_file.log
EDITAR: Parece que sua versão do grep não suporta -A. Então aqui está um pequeno script que você pode usar em vez
#!/bin/sh
file="$1"
pattern="$2"
n="$3"
matches="$(grep -n ${pattern} ${file})"
echo "${matches}" | while read match; do
line="${match%%:*}"
sed -n "${line},$((${line} + ${n} - 1))p" < "${file}"
done
você pode usá-lo assim: sh script.sh mylog_file.log "09:55:21,651" 20
EDIT2: Enquanto eu estou aqui, é uma solução que usa cabeça e cauda em vez de sed apenas no caso de seu sed ser estranho também
#!/bin/sh
file="$1"
pattern="$2"
n="$3"
matches="$(grep -n ${pattern} ${file})"
echo "${matches}" | while read match; do
line="${match%%:*}"
head "-$((${line} + ${n} - 1))" "${file}" | tail "-${n}"
done