Com o GNU grep vinculado a uma versão recente da biblioteca PCRE (Perl Compatible Regular Expressions), você pode tentar:
$ grep -oP '<essid\b[^<>]*>\K[^<>]*(?=</essid>)' file
WLAN-123651234
Isso extrairia o conteúdo da tag essid .
Explicação:
-
<essidcorresponde exatamente à string<essid -
\blimite de palavra que corresponde entre um caractere de palavra e um caractere de não palavra, vice-versa. -
[^<>]*classe de caractere negada que corresponde a qualquer caractere, mas não a<ou>, zero ou mais vezes. -
\Kdescarta todos os caracteres previamente correspondidos da impressão na final. -
[^<>]*classe de caractere negada que corresponde a qualquer caractere, mas não a<ou>, zero ou mais vezes. -
(?=</essid>)Asserção antecipada positiva que afirma que a correspondência deve ser seguida pela string</essid>.