Você também pode usar isso,
sed 's/^\([^<]*\)<.*>\(.*\)$//g' file
Explicação:
^\([^<]*\)<
- Retorna qualquer caractere que não seja <
zero ou mais da posição inicial até <
e, finalmente, armazena os caracteres buscados em um grupo.
.*>
- Corresponde a qualquer caractere zero ou mais vezes até encontrar >
.
\(.*\)$
- Quando o sed encontra o caractere >
, ele começa a armazenar todos os caracteres que estão ao lado de >
até o último em outro grupo ( armazena caracteres entre >
e $
).
Por fim, sed
imprime apenas os grupos armazenados ( ,
) por referência de volta.
Exemplo:
$ cat file.txt
FOO<td align="right" style='mso-number-format:"\[$-409\]m\/d\/yy\ h\:mm\ AM\/PM\;\@";' x:str>BAR
$ sed 's/^\([^<]*\)<.*>\(.*\)$//g' file.txt
FOOBAR