Executando grep para uma string com caracteres sem renderização

2

Então eu tenho um arquivo log.txt que eu posso pesquisar no Notepad ++ no Windows, no entanto, devido ao grande número deles, eu gostaria de ser capaz de executar o grep neles. No entanto, os dados são formatados com caracteres que não são renderizados e que não sei como incluir no meu grep. Notepad ++ mostra-os como o RS preto. O formato dos dados é como [RS]value1[RS]value2 e eu preciso ser capaz de grep para value1 AND value2. Este formato é sempre constante em todos esses arquivos.

Como posso fazer grep procurar por isso? Existe alguma forma de seqüência de escape que eu possa usar? Ou devo apenas fazer a pesquisa por value1 e value2 e ignorar completamente a presença desse caractere de não renderização?

    
por user3407675 16.10.2015 / 12:21

1 resposta

4

Seu [RS] = é um caractere Separador de Registros ASCII 30 0x1E

Você pode usar esse conhecimento para grep para $'\x1e' (como sugerido nos comentários) ou, se quiser ser mais genérico, use uma classe de caractere como [^[:print:]] ou [[:cntrl:]] para corresponder a ele.

    
por 16.10.2015 / 13:46