Saída do Terminal Redirecionada para um Arquivo

3

Estou redirecionando a saída do terminal para um arquivo usando:

Command > File.txt

mas o conteúdo do arquivo aparece assim:

Qual é o problema? Como posso fazer com que pareçam normais?

    
por Adam 12.04.2017 / 06:15

3 respostas

3

O comando que você está executando ( minicom ) está usando "VT100 Escape Sequences" para fazer o posicionamento do cursor.

Para remover os caracteres listados acima, envie o arquivo por meio de

sed -e 's/^[\[[0-9][0-9];[0-9][0-9]H//'
#         ^^ actual ESCape

Eu peguei o Escape digitando Ctrl-V Esc .

    
por waltinator 12.04.2017 / 06:52
1

Essas são seqüências de escape de terminal, a serem interpretadas pelo driver do terminal. Como a saída do programa está sendo salva em um arquivo, o programa ( minicom ) erroneamente descarrega as seqüências de escape também sem verificar onde está o STDOUT.

Para eliminar as seqüências de escape, use sed para remover as linhas que contêm 23;80H , dry-run:

sed '/23;80H/d' file.txt

Modificação:

sed -i '/23;80H/d' file.txt

Se você deseja manter um backup com uma extensão, por exemplo, .bak , do:

sed -i.bak '/23;80H/d' file.txt
    
por heemayl 12.04.2017 / 07:05
0

Isso acontece porque você não definiu a codificação de caracteres do arquivo de saída para UTF-8 .

  

Caso você não possa alterar os arquivos / etc / * ,

     

você pode definir manualmente o menu gnome-terminal Terminal | Definir caractere   Codificando para Unicode (Utf-8)

Resposta obtida deste stackoverflow link

    
por Piyush Patel 12.04.2017 / 15:01