A második példáddal nem küzdök, de elmagyaráznád, hogy ezt honnan vetted: "Viszont ez a fájlban előforduló legelső nyitó tag-től az előforduló utolsó záró tag-ig vágja ki a fájlból a sorokat." Mert nem igaz.
Az elején nem nyomtat (a -n opció miatt), ez után az első nyitó TAG-től az ezt követő első záró TAG-ig nyomtat (ez meg a p parancs miatt van), aztán megint nem nyomtat, majd ha lát megint nyitó TAG-et akkor újfent elkezd nyomtatni, és ha ez után lát záró TAG-et, megint abbahagyja, és így tovább.