9

Мне нужно напечатать первые 10 байтов файла в шестнадцатеричном формате из командной строки linux mint.

Может кто-нибудь мне помочь?

Спасибо

3 ответа3

9

Я пришел сюда, увидев три ответа, думая, что мне нечего добавить, и что это будет упражнение в том, как много людей могут опубликовать один и тот же вкладыш в первую минуту задаваемого вопроса. Но я нахожу людей, использующих какой-то новый инструмент hexdump . Эта команда является способом более 2 букв; это намекает на какую-то другую базу, отличную от The One True Base (база 8); и из его названия даже видно, что он делает. Очевидно, что это не путь Unix.

Так вот и радость от od ("восьмеричная свалка").

Первый GNU, как вы найдете на вашем Linux Mint:

od --format=x1 --read-bytes=10 foo

Теперь BSD, где ирония в том, что на самом деле это та же программа, что и в hexdump:

od -t x1 -N 10 foo
8

Опция -l len | -len len для: остановка после записи октетов <len> .

Используйте это с файлом как это:

xxd -l 10 file

или же

hexdump -C -n 10 file

где -n len совпадает с параметром -l из xxd.

5

Вы можете использовать xxd для этого.

$ xxd -ps -l 10 FILENAME
546865204d4954204c69

Это печатает первые 10 байт (-l 10) FILENAME в простом шестнадцатеричном формате (-ps).

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .