Нет, команды Linux не 'испеклись' в. Большое количество является частью GNU coreutils, но каждый - все еще отдельная программа в этом пакете и может в конечном счете быть скомпилирован самостоятельно.
Конечно, tree
команда - ничто, чтобы сделать с GNU, его страница проекта может быть найдена здесь - http://mama.indstate.edu/users/ice/tree/. Исходный код доступен загрузке и содержит инструкции по сборке (я предполагаю, что Вы уже знакомы с make
и gcc
). Исходный пакет также будет доступен для Вашего дистрибутива и может включать дополнения/патчи, не доступные в восходящей версии (но также и может быть более старая версия). Ваш дистрибутив будет иметь инструкции относительно того, как скомпилировать это. В большинстве случаев, если Вы захотите кодировать на пакете, то восходящий источник будет лучшим для движения со все же.
Рассмотрение журнала изменений для tree
хотя, я вижу, что вывод XML был добавлен в версии 1.6.0 (-X
опция), и HTML всегда был доступен. Существует много программ, уже доступных для преобразования между различными языками разметки. xml2yaml
определенный, который дал бы Вам yaml
. Также pandoc
самый всесторонний, о котором я знаю и имею поддержку пользовательских форматов (хотя создавая, каждый - задача программирования сам по себе).
Если Вы все еще хотите идти вперед и попробовать, разрабатывают эти функции непосредственно tree
хотя, я рекомендовал бы связаться с разработчиком и спросить, хотели ли бы они включить их. Если им интересно, и можно обеспечить патчи, которые имеют достаточно высокое качество, вероятно, что они были бы в конечном счете включены в реальную программу. Из того, что уже находится в программе, довольно вероятно, что он интересовался бы добавлением yaml
или json
вывод (с другой стороны, хотя, он может чувствовать, что программа уже имеет достаточно чрезмерного увеличения размера функции).
Пользовательский формат кажется более опрометчивым мне, хотя, поскольку он походит на большое обязательство для такого в других отношениях простого инструмента, если нет очень простой способ реализовать его. Вам могло понравиться с библиотеками большего проекта как pandoc для преобразований, но снова это опрометчиво для основного инструмента.