visualizar arquivo contendo texto DOS (caracteres de desenho de caixa, terminadores de linha CRLF) e seqüências de escape

3

Eu tropecei em um arquivo de texto estranho em um arquivo de um antigo jogo baixado de algum site abandonware.

O arquivo de texto é denominado WHY_NOT.TXT . Presumo que o arquivo seja algum tipo de arquivo .NFO do grupo de pessoas que ... hum ... ' liberado 'o jogo.

Eu não tive muita sorte em ver o arquivo usando cat ou menos ou nfoview .

A pergunta é: como posso visualizar o conteúdo do arquivo como pretendido?

Saída do nfoview:

Aquiestáasaídadogatoemenos.Euusoscreenshotsporquetemoqueacodificaçãosejaconfundidapelonavegadorepelasinternets.

Saída do arquivo:

$ file WHY_NOT.TXT 
WHY_NOT.TXT: ISO-8859 text, with CRLF line terminators, with escape sequences

Aqui está o arquivo no despejo hexadecimal bruto criado usando xxd -p WHY_NOT.TXT :

1b5b34306d0d0a1b5b33396d1b5b34306d0d0a1b5b33396d1b5b34431b5b
303b33346ddb1b5b316ddbdfdfdfdfdfdf201b5b303b33346ddb1b5b316d
dbdfdfdfdfdfdb201b5b34346d201b5b34306ddbdfdfdfdfdfdb201b5b30
3b33346ddb1b5b316ddbdfdfdbdfdfdb201b5b303b33346ddb1b5b316ddb
1b5b36431b5b34346d201b5b34306ddbdfdfdfdfdfdb201b5b303b33346d
db1b5b316ddbdfdfdb201b5b303b33346ddb1b5b316ddb201b5b303b3334
6ddb1b5b316ddbdfdfdfdfdfdc0d0a202020201b5b303b33346ddb1b5b31
6ddbdcdcdcdcdcdc201b5b303b33346ddb1b5b316ddbdcdcdcdc1b5b3434
6ddc1b5b34306ddb201b5b34346d201b5b34306ddbdcdcdcdc1b5b34346d
dc1b5b34306ddb201b5b303b33346ddb1b5b316ddb201b5b303b33346ddb
1b5b316ddb201b5b303b33346ddb1b5b316ddb201b5b303b33346ddb1b5b
316ddb1b5b36431b5b34346d201b5b34306ddbdcdcdcdc1b5b34346ddc1b
5b34306ddb201b5b303b33346ddb1b5b316ddb201b5b303b33346ddb1b5b
316ddb201b5b303b33346ddb1b5b316ddb201b5b303b33346ddb1b5b316d
db202020201b5b303b33346ddb1b5b316ddb0d0a1b5b3130431b5b303b33
346ddc1b5b316ddb201b5b303b33346ddb1b5b316ddb1b5b37431b5b3434
6d201b5b34306ddb202020201b5b303b33346ddc1b5b316ddb201b5b303b
33346ddb1b5b316ddb202020201b5b303b33346ddb1b5b316ddb201b5b30
3b33346ddb1b5b316ddb1b5b36431b5b34346d201b5b34306ddb20202020
1b5b303b33346ddc1b5b316ddb201b5b303b33346ddb1b5b316ddb201b5b
303b33346ddb1b5b316ddb201b5b303b33346ddb1b5b316ddb201b5b303b
33346ddb1b5b316ddb202020201b5b303b33346ddb1b5b316ddb0d0a2020
20201b5b303b33346ddc1b5b316ddcdcdcdcdc1b5b34346ddc1b5b34306d
db201b5b303b33346ddb1b5b316ddb1b5b37431b5b34346d201b5b34306d
db202020201b5b34346d201b5b34306ddb201b5b303b33346ddb1b5b316d
db202020201b5b303b33346ddb1b5b316ddb201b5b303b33346ddb1b5b31
6ddbdcdcdcdcdc201b5b34346d201b5b34306ddb202020201b5b34346d20
1b5b34306ddb201b5b303b33346ddb1b5b316ddb201b5b303b33346ddb1b
5b316ddbdc1b5b34346ddc1b5b34306ddb201b5b303b33346ddb1b5b316d
dbdcdcdcdc1b5b34346ddc1b5b34306ddf0d0a1b5b306d1b5b323535440d
0a

Você pode recriar o arquivo original copiando essa string para um arquivo e, em seguida, usar xxd -r -p filename . Aqui está o md5sum para ter certeza de que você tem o arquivo original idêntico: e64665b3f6e5fb3ec71c8fbf6cc63875

    
por lesmana 02.02.2013 / 20:31

2 respostas

4

Esse é o conjunto de caracteres MSDOS.

Teste recode cp437..u8 em um terminal UTF8.

Dá:

██▀▀▀▀▀▀ ██▀▀▀▀▀█  █▀▀▀▀▀█ ██▀▀█▀▀█ ██       █▀▀▀▀▀█ ██▀▀█ ██ ██▀▀▀▀▀▄
██▄▄▄▄▄▄ ██▄▄▄▄▄█  █▄▄▄▄▄█ ██ ██ ██ ██       █▄▄▄▄▄█ ██ ██ ██ ██    ██
      ▄█ ██        █    ▄█ ██    ██ ██       █    ▄█ ██ ██ ██ ██    ██
▄▄▄▄▄▄▄█ ██        █     █ ██    ██ ██▄▄▄▄▄  █     █ ██ ██▄▄█ ██▄▄▄▄▄▀

em cores.

    
por 02.02.2013 / 21:34
1

Algumas pistas sobre a cor:

As coisas ESC[0;33m; são Sequências de escape ANSI usadas para adicionar cor à saída do console. 'ESC' em ascii é decimal 27 ou octal 33, então você pode passar isso para o shell com \033 e ver o que eu quero dizer:

echo -e "\033[0;32mgreen \033[1mbright \033[44mon blue\033[0m and reset..."

Lembre-se, o \033 é ESC. Parece familiar? Muitos deles apenas definem o plano de fundo, e alguns arquivos são espaços - daí o SPAMLAND estilizado.

Observe que essas seqüências não funcionam no emulador de terminal do MS Windows.

    
por 02.02.2013 / 21:30