Ось приклад із реального життя, коли hexdump може бути корисним. Якщо ви працюєте з двійковими даними, це буде дуже важко зрозуміти. Для зручності ви можете швидко перетворити двійкові дані в шістнадцяткові або десяткові.
У цьому посібнику перевірте, як використовувати команду hexdump у Linux.
Hexdump в Linux
Hexdump - це проста, але корисна програма, написана мовою C. Ось чому професійні програмісти на С можуть легко використовувати його. Однак, навіть якщо ви не досвідчені в програмуванні на С, ви все одно можете використовувати hexdump для своєї мети.
Hexdump поставляється попередньо встановленим у будь-якому дистрибутиві Linux. У цьому посібнику я буду використовувати Ubuntu для демонстраційних цілей.
Використання Hexdump
Для демонстрації використання hexdump я створив зразок манекена текстового файлу.txt.
$ котячий манекен.txt
Ми передамо цей файл hexdump, щоб перетворити його вміст у різні формати виводу.
Однобайтове вісімкове відображення
Наступна команда hexdump надрукує вхідні дані у шістнадцятковому форматі. У вихідних даних кожен рядок містить 16 розділених пробілом вхідних даних, кожен із 3 стовпців і заповнених нулем, у вісімковій.
$ hexdump -b
Однобайтове відображення символів
Наступна команда hexdump відобразить вхідні дані у шістнадцятковому форматі. У вихідних даних кожен рядок містить 16 розділених пробілами символів вхідних даних, кожен з яких має 3 стовпці та заповнені пробілом.
$ hexdump -c
Дисплей Canonical hex + ASCII
Наступна команда hexdump відобразить вхідні дані у шістнадцятковій системі. На виході кожен рядок містить 16 шістнадцяткових байтів, розділених пробілами, кожен із 2 стовпців. Наступний вміст буде однаковими байтами % _p у форматі "|" символів.
$ hexdump -C
Двобайтове десяткове відображення
Наступна команда hexdump відобразить вхідні дані у шістнадцятковому форматі. У вихідних даних кожен рядок містить 8 розділених пробілом 2 байтових одиниць вхідних даних, кожна з яких має 5 стовпців і заповнені нулем, в десятковому знаку без знака.
$ hexdump -d
Двобайтове вісімкове відображення
Наступна команда hexdump надрукує вхідні дані у шістнадцятковому форматі. У вихідних даних кожен рядок містить 8 розділених пробілом 2 байти вхідних даних, кожен із 6 стовпців і заповнених нулем, у вісімковій.
$ hexdump -o
Двобайтове шістнадцяткове відображення
Наступна команда hexdump надрукує вхідні дані у шістнадцятковому форматі. У вихідних даних кожен рядок містить 8 розділених пробілом 2 байти вхідних даних, кожен з 4 стовпцями та заповненими нулем, шістнадцятковою.
$ hexdump -x
Відобразити всі введені дані
При використанні hexdump він замінить вміст повторюваних рядків однією зірочкою. Якщо ви хочете змусити hexdump виводити весь вміст, використовуйте прапорець -v.
$ котячий манекен.txt$ hexdump -b фіктивний.txt
$ hexdump -v -b
Обмежена кількість байтів
Hexdump підтримує можливість вибору певної кількості байтів від файлу до hexdump. Щоб вказати суму, використовуйте прапорець “-s”, а потім байт.
$ hexdump -s 2 -c
Заключна думка
Приклади, продемонстровані тут, - це способи використання переважно hexdump. Для отримання повної інформації про hexdump, сторінка керівництва є одним з найкращих ресурсів.
$ man hexdump
Hexdump - це потужний інструмент, якщо ви знаєте, коли і як ним користуватися. Однак інструменти не завжди є відповіддю на питання налагодження. Перевірте, як налагодити скрипт bash. Якщо ви користуєтеся NodeJS, тоді перевірте, як використовувати налагоджувач NodeJS.
Насолоджуйтесь!