Что такое Toybox Toybox — это проект с открытым исходным кодом, созданный и поддерживаемый разработчиками-любителями (добровольцами), первоначально для Linux, но в наши дни также работающий на Android, BSD и MacOS. Проект начался в 2006 году, и его первоначальный автор (Роб Лэндли) продолжает поддерживать проект с открытым исходным кодом. Здесь приводится краткое описание Toybox, а также справочник по командам для двух версий: самой свежей на сег одняшний день Ver. 0.8.9 и версии Ver. 0.8.4, которая испоьзована в сборке Android 12 для ТВ-боксов на основе SoC Allwinner H618. Полное описание Toybox можно найти на сайте автора: Toybox - это бинарный файл с многими вызовами (multicall binary), который объединяет наиболее распространенные утилиты командной строки Linux в один исполняемый файл. При этом он является простым, небольшим, быстрым, достаточно совместимым со стандартами и достаточно мощным, чтобы превратить Android в среду разработки. Исходные тексты отдельных консольных команд Toybox находятся в папке Toys, которая содержит пять вложенных папок, в которых каждая команда представляет собой отдельный автономный файл :
Примечания. Как пользоваться командами Toybox По состоянию на текущий момент самой новой версией, доступной для загрузки в виде бинарного файла, является Ver. 0.8.9, скомпилированная для архитектуры armv7m и доступная на странице загрузок: Download toybox-armv7m В тоже время, в образе Android 12 для ТВ-боксов на Allwinner H618 используется более ранняя версия Ver. 0.8.4. По этой причине в представленном здесь справочнике команд информация приведена для этих двух версий раздельно, но с возможностью срвнения имеющихся различий в наборе команд и/или их параметров. Для каждой команды для версий 4 и 9 показана информация о её использовании (в консоли или скрипте), основанная на выводимом при запуске команды хелпе. При этом кроме исходного англоязычного дампа такого хелпа приведен его перевод на русский (естественно, гуглевский, а потому местами не очень благозвучный), местами слегка отредактированный и переформатированный. А также есть возможность познакомиться с полным исходным текстом для уточнения алгоритма работы соответствующей утилиты. Кроме того, в справочнике отдельно выделены команды из раздела Pending, которые в сборке бинарного файла отсутствуют, но существуют их исходные тексты. Поэтому здесь они представлены только в виде исходных текстов и хелпов из комментариев к этим текстам. Для вызова любой выбранной команды из Toybox Ver. 0.8.4 достаточно ввести в консоли (или скрипте) "toybox имя-команды [параметры команды]". Большинство команд Toybox ver. 0.8.4 ( 171 из 184) представлены в каталоге /bin в виде символических ссылок. Это означает, что при вызове консольной команды (например, ls) фактически происходит вызов команды toybox ls с соответствующим параметрами. Возникает вопрос: для чего нужна информация о самой последней версии Ver. 0.8.9, если она отстутствует в текущей сборке Android 12 и есть только скачанный бинарный файл Toybox-0.8.9, переименованный для краткости, например, в toyboxm ? На самом деле, этой версией также можно пользоваться (или попытаться воспользоваться), для этого есть такие способы (их больше, естественно): Разумеется, нет никаких гарантия, что при таком подходе будут нормально выполняться все имеющиеся в toybox команды, со всеми параметрами и функционалом. Поэтому использование версии Ver. 0.8.9, вероятно, будет иметь скорее экспериментальный или тестовый характер. |