Вопрос или проблема
Busybox
Документация Busybox объясняет только это:
od [-aBbcDdeFfHhIiLlOovXx] [-t TYPE] [FILE]
Записать однозначное представление, по умолчанию восьмеричные байты, файла
FILE
на стандартный вывод. БезFILE
или когдаFILE
равен-
, считать стандартный ввод.
Но она не объясняет, что означает каждая опция, и они, кажется, действительно отличаются от страницы man.
Опция -t
похоже не существует и выдает ошибку:
od: invalid option -- 't'
BusyBox v1.35.0 () многофункциональный двоичный файл.
Использование: od [-aBbcDdeFfHhIiLlOovXx] [FILE]
Другой документационный сайт кажется упускает опцию -t
и выглядит более точным.
Использование:
od [-abcdeFfhiloxsv] [FILE]
Явно отображает
FILE
(илиstdin
), по умолчанию как восьмеричные байты
Подтверждая онлайн-документацию, когда отправляется команда od --help
, вывод:
Использование: od [-aBbcDdeFfHhIiLlOovXx] [FILE]
Репозиторий
Судя по исходному коду, это, похоже, какая-то переработка файла od_bloaty.c
исходного файла.
Вопрос
Я не смог понять данный исходный файл, и документация неясна по всем опциям команды od
.
Существует ли какая-либо другая документация для этой команды busybox или лучшее объяснение для этих опций?
Ответ или решение
Busybox: Опции команды od
Команда od
, или "octal dump", является одной из утилит, предоставляемых BusyBox, специальным инструментом, который объединяет множество стандартных утилит Unix в один исполняемый файл. Эта команда предназначена для вывода нечёткой (однозначной) репрезентации данных из файлов или стандартного ввода. В отличие от стандартной версии od
, реализация в BusyBox имеет определённые особенности и ограничения.
Основной синтаксис
Команда od
в BusyBox имеет следующий базовый синтаксис:
od [-aBbcDdeFfHhIiLlOovXx] [FILE]
Если не указан FILE
, данные будут считываться из стандартного ввода.
Опции команды od
BusyBox предлагает следующие опции для команды od
:
- -a: Выводит данные в ASCII-формате (символьное представление).
- -b: Выводит данные в байтовом формате.
- -c: Показывает данные в символах (коды ASCII).
- -d: Печатает данные в десятичном формате (двухбайтовые знаковые числа).
- -D: Печатает данные в десятичном формате (четырёхбайтовые знаковые числа).
- -e: Позволяет указать порядок байтов.
- -F: Печатает данные в формате "четырёхбайтовое число с плавающей запятой" в Big-endian.
- -f: Печатает данные в формате "четырёхбайтовое число с плавающей запятой" в Little-endian.
- -H или -h: Вывод данных в шестнадцатеричном формате (по одному байту).
- -i: Выводит данные в формате "четырёхбайтовое знаковое число".
- -l: Выводит данные в формате "долгое число" (восьмибайтовое знаковое число).
- -o: Печатает данные в восьмеричном формате.
- -v: Выводит все данные, включая повторяющиеся строки.
- -x: Обеспечивает вывод в шестнадцатеричном формате, сгруппированным по два байта.
Отсутствие опции -t
Документация BusyBox действительно не упоминает опцию -t
, которая присутствует в стандартных версиях утилиты od
на базе GNU. В BusyBox эта опция отсутствует, и попытка её использования приведёт к ошибке.
Где найти дополнительную информацию
Хотя документация на сайте BusyBox краткая, вы можете обратиться к следующим ресурсам для получения более детальной информации:
- Исходный код BusyBox: Анализируя репозиторий GitHub BusyBox, можно лучше понять внутреннее устройство команд.
- Форумы и сообщества: Сообщества, такие как Stack Overflow или специализированные форумы по Linux, могут предоставить полезные советы от других пользователей.
- Документация системного администрирования: Справочные книги или онлайн-курсы, касающиеся работы с Linux и системного администрирования, могут охватывать использование BusyBox и его команд.
Заключение
Команда od
в BusyBox предоставляет мощные функции для анализа и визуализации бинарных данных, хотя и имеет упрощённый набор опций по сравнению с полными версиями данной команды. Для пользователей, которые работают в средах с ограниченными ресурсами, использование BusyBox может быть целесообразным. Правильное применение командной строки и понимание доступных опций позволит более эффективно управлять данными в Linux-системах.