cat file.txt | grep -o -P '.{0,20}string.{0,20}'
Isso deve ser feito para você
Atualização:
Se você não quer cat, você pode simplesmente usar o grep com o arquivo como parâmetro:
grep -o -P '.{0,20}pseudomonas.{0,20}' FileName.html
Espero que ajude
Além disso, o -P usa o Perl Regex, que as man pages dizem ser experimental, se você quiser evitar esse sinalizador, você pode usar o egrep em seu lugar:
grep -Eo '.{0,20}yourstring.{0,20}' yourtestfile.txt