ИТ Блог. Администрирование серверов на основе Linux (Ubuntu, Debian, CentOS, openSUSE)
Понедельник, 31 марта, 2025
Сегодня у нас 1 праздник:
Международный День Резервного Копирования (World Backup Day). Пользователи сайта социальных новостей reddit предложили сделать дату 31.03 Международным днём резервного копирования, аргументируя это тем, что никогда заранее нельзя узнать, какие сюрпризы преподнесёт 1.04

Как использовать команду hexdump в Linux?

Как использовать команду hexdump в Linux?

Hexdump — мощный инструмент в системах Linux, который в основном используется разработчиками и отладчиками приложений. Он может преобразовывать входные файлы и данные в приятный и читаемый формат.

 

Вот пример из реальной жизни, где может быть полезен hexdump. Если вы работаете с двоичными данными, это будет очень сложно понять. Для удобства вы можете быстро преобразовать двоичные данные в шестнадцатеричные или десятичные.

В этом руководстве вы узнаете, как использовать команду hexdump в Linux.

 

Hexdump в Linux

Hexdump — это простая, но полезная программа, написанная на языке C. Вот почему профессиональные программисты на C могут легко использовать его. Однако, даже если у вас нет опыта программирования на C, вы все равно можете использовать hexdump для своих целей.

Hexdump предустановлен в любом дистрибутиве Linux. В этой статье мы будем использовать Ubuntu в демонстрационных целях.

 

Использование Hexdump

Для демонстрации использования hexdump я создал образец текстового файла dummy.txt.

$ cat dummy.txt

 

Мы передадим этот файл в hexdump, чтобы преобразовать его содержимое в различные форматы вывода.

 

Однобайтовый восьмеричный

Следующая команда hexdump распечатает входные данные в шестнадцатеричном формате. В выводе каждая строка содержит 16 байтов входных данных, разделенных пробелами, каждый из которых имеет 3 столбца и заполнен нулями в восьмеричном формате.

$ hexdump -b <input_file_content>

 

Отображение однобайтовых символов

Следующая команда hexdump отобразит входные данные в шестнадцатеричном формате. В выводе каждая строка содержит 16 символов входных данных, разделенных пробелами, каждый из которых имеет 3 столбца и заполнен пробелами.

$ hexdump -c <input_file_content>

 

Канонический шестнадцатеричный + ASCII

Следующая команда hexdump отобразит входные данные в шестнадцатеричном формате. В выводе каждая строка содержит 16 шестнадцатеричных байтов, разделенных пробелами, по 2 столбца в каждом. Следующее содержимое будет теми же байтами в формате % _p , заключенными в «|» символы.

$ hexdump -C <input_file_content>

 

Двухбайтовый десятичный

Следующая команда hexdump отобразит входные данные в шестнадцатеричном формате. В выводе каждая строка содержит 8 разделенных пробелом двухбайтовых блоков входных данных, каждая из которых имеет 5 столбцов и заполнена нулями в десятичном формате без знака.

$ hexdump -d <input_file_content>

 

Двухбайтовый восьмеричный

Следующая команда hexdump распечатает входные данные в шестнадцатеричном формате. В выводе каждая строка содержит 8 разделенных пробелами 2 байта входных данных, каждый из которых содержит 6 столбцов и заполнен нулями в восьмеричном формате.

$ hexdump -o <input_file_content>

 

Двухбайтовый шестнадцатеричный

Следующая команда hexdump распечатает входные данные в шестнадцатеричном формате. В выводе каждая строка содержит 8 разделенных пробелами 2 байта входных данных, каждый с 4 столбцами и заполненными нулями в шестнадцатеричном формате.

$ hexdump -x <input_file_content>

 

Показать весь ввод

При использовании шестнадцатеричного дампа он заменяет содержимое повторяющихся строк одной звездочкой. Если вы хотите заставить hexdump выводить все содержимое, используйте флаг «-v».

$ cat dummy.txt

 

$ hexdump -b dummy.txt

 

$ hexdump -v -b <input_file_content>

 

Ограничить количество байтов

Hexdump поддерживает опцию определения определенного количества байтов из файла в hexdump. Чтобы указать количество, используйте флаг «-s», за которым следует количество байтов.

$ hexdump -s 2 -c <input_file_content>

 

Последняя мысль

Демонстрируемые здесь примеры — это способы, которыми вы в основном будете использовать hexdump. Полную информацию о hexdump можно найти на странице руководства — один из лучших ресурсов.

$ man hexdump

 

Hexdump — мощный инструмент, если вы знаете, когда и как его использовать. Однако инструменты не всегда помогают при отладке. Узнайте, как отлаживать сценарий bash . Если вам нравится NodeJS, узнайте, как использовать отладчик NodeJS .

Exit mobile version