Strange ascii do hexdump do arquivo de texto

2

Eu vi esta pergunta Por que o Ctrl-D (EOF ) sair do shell? e queria tentar o exemplo na segunda resposta. Então eu criei um arquivo e usei o hexdump:

federico@home ~ $ cat > test.txt
prova
^C
federico@home ~ $ hexdump test.txt 
0000000 7270 766f 0a61                         
0000006

A segunda linha tem '6' no final e, se eu tentar usar link para decodificar de hex para ascii eu recebo uma ordem de cartas estranha. Por que isso acontece? Obrigado

    
por Federico Ponzi 12.08.2015 / 00:47

1 resposta

10

Você está usando uma CPU little endian, as palavras de 16 bits que o hexdump está mostrando são trocadas por byte.

6 é o deslocamento da segunda linha de despejo que está vazia, seu arquivo contendo apenas seis bytes.

Use od -c ou od -t x1 para obter a ordem esperada:

$ od -c test.txt 
0000000   p   r   o   v   a  \n
0000006
$ od -t x1 test.txt 
0000000 70 72 6f 76 61 0a
0000006
    
por 12.08.2015 / 00:52

Tags