Команды Linux · 2 min read · Oct 26, 2025

Учебник по команде od в Linux для начинающих (6 примеров)

Возможно, иногда, работая в командной строке Linux, вам захочется отобразить/конвертировать содержимое файла в/в другую форму, отличную от его оригинальной формы, например, в десятичную или восьмеричную. К счастью, есть встроенный инструмент командной строки, который вы можете использовать в таких ситуациях.

Команда od (восьмеричный дамп) в Linux — это универсальная утилита, используемая для отображения содержимого файлов в различных форматах, таких как восьмеричный, шестнадцатеричный, десятичный и ASCII. Эта команда полезна для просмотра двоичных данных или файлов, содержащих непечатаемые символы, позволяя пользователям проверять и отлаживать необработанные данные. Команда od в основном используется разработчиками и системными администраторами, которым необходимо анализировать структуры данных низкого уровня, проводить судебный анализ или отлаживать программное обеспечение.

В этом учебнике мы обсудим основы этого инструмента, используя простые для понимания примеры. Все примеры, обсуждаемые здесь, были протестированы на Ubuntu 24.04 LTS.

Команда od в Linux

Команда OD используется для преобразования входных данных в восьмеричный формат. Вот её синтаксис:

od [OPTION]... [FILE]...

А вот что говорит страница man об этом:

Запишите однозначное представление, восьмеричные байты по умолчанию, ФАЙЛ в стандартный вывод. При наличии более одного аргумента ФАЙЛ объедините их в указанном порядке, чтобы сформировать входные данные. При отсутствии ФАЙЛ или когда ФАЙЛ равен -, читайте стандартный ввод.

Ниже приведены некоторые примеры в формате вопрос-ответ, которые дадут вам лучшее представление о том, как работает команда od:

Вопрос 1. Как использовать команду od?

Предположим, вот файл, который вы хотите конвертировать:

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

А вот что происходит, когда вы запускаете команду od на нём:

Вывод команды od в Linux

Таким образом, по умолчанию команда od преобразует файл в восьмеричный формат. Однако вы также можете заставить инструмент конвертировать в другие форматы. Например, используйте -x для преобразования в шестнадцатеричный:

Команда od преобразует файл в восьмеричный формат

Аналогично, есть опции для отображения входных данных в символьном, плавающем и целочисленном форматах.

Вопрос 2. Как заставить od пропускать байты?

Если вы хотите пропустить некоторые начальные байты, вы можете сделать это, передав число в опцию командной строки -j.

od -j [num] [filename]

Например:

od -j 10 file1

Вопрос 3. Как ограничить количество байтов на строку вывода?

По умолчанию команда od производит 32 байта на строку вывода. Однако вы можете настроить это число, используя опцию -w.

od -w[num] [filename]

Например:

od -w2 file1

Как ограничить количество байтов на строку вывода

Вопрос 4. Как заставить od выводить дубликаты?

Предположим, файл, который вы хотите конвертировать, содержит дублирующиеся строки. Например:

Как заставить od выводить дубликаты

Тогда по умолчанию od производит * в выводе для дубликатов.

Вывод дубликатов, отмеченный командой od

Однако, если вы хотите, вы можете изменить это поведение, что можно сделать, используя опцию командной строки -v.

od -c -w1 -v file1

Команда od -v опция

Вопрос 5. Как отображать смещения байтов?

Смещения байтов можно отображать с помощью опции командной строки -A. Вам нужно указать формат, в котором вы хотите видеть смещение - x для шестнадцатеричного, o для восьмеричного и d для десятичного.

od -A[format] [filename]

Например:

od -Ad -c file1

Вопрос 6. Как ограничить вывод od до заданного количества байтов?

Чтобы ограничить общий вывод до заданного количества байтов, используйте опцию -N.

od -N[num] [filename]

Например:

od -N50 file1

Таким образом, вы можете видеть, что общий вывод был сокращён.

Заключение

Команда OD предлагает множество функций в виде опций командной строки. Мы обсудили некоторые основные из них здесь. Как только вы закончите практиковаться с этими, перейдите на страницу man инструмента, чтобы узнать больше о нём.

Share: X/Twitter LinkedIn

Get new posts in your inbox

No spam. Unsubscribe anytime.