A saída de redirecionamento bash do Windows possui uma codificação estranha

0

Eu uso o grep para procurar padrões que estão funcionando corretamente. No entanto, quando eu redireciono a saída para qualquer arquivo, a saída fica corrompida devido à codificação.

Existe uma maneira de fazer com que o bash no windows envie o arquivo na codificação UTF-8 normal para que editores de texto normais possam lê-lo corretamente?

EDITAR: Parece que quando eu redireciono a saída do grep resulta em qualquer arquivo:

[35m[KFile.txt[m[K[36m[K:[m[K[01;31m

Estou executando o Windows mais recente e tenho o bash instalado usando o modo de desenvolvedor e ativando o bash.

A saída fica confusa no processo. Mesmo a versão do Windows dos editores de texto do linux exibe a saída estranha. No entanto, se eu rodar cat no arquivo contendo a saída estranha. Ele mostra a saída bem sem problemas.

Estou usando o Notepad ++ para ver os resultados.

Obrigado

    
por Cows42 20.10.2017 / 13:21

1 resposta

0

Isso não é um problema de codificação. O programa cuja saída você está capturando está emitindo códigos de controle ANSI para definir a posição do cursor, a cor do primeiro plano etc.

Quando você usa cat , os códigos de controle são processados pelo tty e, portanto, não aparecem na forma bruta.

    
por 20.10.2017 / 13:53

Tags