2015-01-28 9 views
7

Ho due file e voglio vedere se i primi 40 byte sono simili. Come posso farlo usando hex dump?Come mostrare i primi x byte usando hexdump?

+1

'Confronta primi N byte' è diverso da 'Mostra prima N byte'. Considera questo NON UN DUPLICATO. –

risposta

5

Se si utilizza l'utilità BSD hexdump (che sarà anche installato come hd e il valore predefinito diverso formato di output) quindi è possibile fornire il parametro di riga di comando -n40 per limitare il dump ai primi 40 byte:

hexdump -n40 filename 

Se si utilizza lo standard Posix od, è necessario il capitale N. Si potrebbe trovare la seguente invocazione utile:

od -N40 -w40 -tx1 -Ax filename 

(È possibile farlo con hexdump, anche, ma la stringa di formato è più lavoro per capire :)).

0

Non certo perché è necessario Hexdump qui,

diff <(dd bs=1 count=40 if=file1) <(dd bs=1 count=40 if=file2) 

con hexdump:

diff <(dd bs=1 count=40 if=file1|hexdump) <(dd bs=1 count=40 if=file2|hexdump) 
+1

Supponendo che i file non siano file di testo (in altre parole, hanno vari caratteri non stampabili), quindi 'diff' ti dirà solo se i file sono identici o meno. Usando 'hd' (o' hexdump', ma 'hd' di solito è un formato più amichevole), puoi dire se sono * simili *, come nella domanda. BTW, 'dd bs = 40 count = 1' è più efficiente, e probabilmente vuoi gettare i report del conteggio dei byte di dd nel bitbucket (' 2 >>/dev/null') – rici

+0

Mi piacerebbe vederli realmente. Grazie. – OHHH

1

Prova questa:

head -c 40 myfile | hexdump 
Problemi correlati