Deve usar grep
? sed
e awk
são mais adequados para essas tarefas:
sed -n '/<VirtualHost /,/<\/VirtualHost>/p' inputfile
awk '/<VirtualHost /,/<\/VirtualHost>/' inputfile
Como as diretivas httpd.conf não diferenciam maiúsculas de minúsculas, você pode preferir usar a correspondência sem distinção entre maiúsculas e minúsculas:
sed -n '/<VirtualHost /I,/<\/VirtualHost>/Ip' inputfile
gawk -vIGNORECASE=1 '/<VirtualHost /,/<\/VirtualHost>/' inputfile
( IGNORECASE
é extensão GNU, disponível apenas em gawk
.)
Atualizar de acordo com a pergunta alterada:
sed -n '/<VirtualHost\s\+192\.168\.1\.10\b/I,/<\/VirtualHost>/Ip' inputfile
gawk -vIGNORECASE=1 '/<VirtualHost\s+192\.168\.1\.10\>/,/<\/VirtualHost>/' inputfile