Usando o XMLStarlet :
$ xml sel -t -c '//mono[tag1 = "http://yahoo.com"]' -nl file.xml
<mono id="2">
<tag1>http://yahoo.com</tag1>
</mono><mono id="4">
<tag1>http://yahoo.com</tag1>
</mono>
O XPath //mono[tag1 = "http://yahoo.com"]
significa "qualquer mongo
do nó que tenha um subnó chamado tag1
cujo valor é http://yahoo.com
". O -c
significa "me dê uma cópia de ..." e o% final -nl
insere uma nova linha no final da saída.