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?
risposta
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 :)).
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)
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
Mi piacerebbe vederli realmente. Grazie. – OHHH
Prova questa:
head -c 40 myfile | hexdump
'Confronta primi N byte' è diverso da 'Mostra prima N byte'. Considera questo NON UN DUPLICATO. –