Tengo un archivo de texto muy largo (desde aquí ) que debe contener 6 caracteres hexadecimales y luego un 'salto' (que aparece como un carácter y no parece mostrarse correctamente en el código de marcado a continuación) seguido de algunas palabras:
00107B  Cisco Systems, Inc
00906D  Cisco Systems, Inc
0090BF  Cisco Systems, Inc
5080    Cisco Systems, Inc
0E+00   ASUSTek COMPUTER INC.
000C6E  ASUSTek COMPUTER INC.
001BFC  ASUSTek COMPUTER INC.
001E8C  ASUSTek COMPUTER INC.
0015F2  ASUSTek COMPUTER INC.
2354    ASUSTek COMPUTER INC.
001FC6  ASUSTek COMPUTER INC.
60182E  ShenZhen Protruly Electronic Ltd co.
F4CFE2  Cisco Systems, Inc
501CBF  Cisco Systems, Inc
He echado un vistazo y no puedo ver algo que funcione en esta situación. Mi pregunta es, ¿cómo puedo usar grep/ sed/ awk/ perlpara eliminar todas las líneas de este archivo de texto que no comienzan con exactamente 6 caracteres hexadecimales y luego un 'salto'?
PD Para puntos de bonificación, ¿cuál es la mejor manera de ordenar el archivo alfabéticamente y numéricamente de acuerdo con los caracteres hexadecimales (es decir, 000000-> FFFFFF)? ¿Debo usar sort?

Y para completar, también puede hacer esto con grep:
Esta expresión grep extendida busca exactamente 6 dígitos hexadecimales al comienzo de cada línea, seguidos inmediatamente por un límite de no espacio en blanco a espacio en blanco (
\b).fuente