LINUX.ORG.RU

tree 2.2.0 и 2.2.1

 , , , ,

tree 2.2.0 и 2.2.1

3

4

24 и 25 ноября, после двух месяцев разработки, состоялись выпуски 2.2.0 и 2.2.1 консольной утилиты tree, предназначенной для просмотра дерева каталогов. Программа написана на языке C и распространяется по лицензии GNU GPL 2 или более поздней версии.

В новых версиях:

  • добавлена опция --opt-toggle для переключения опций, таких как -a, -p и т. д. Полезна при использовании псевдонимов;
  • добавлена опция --hyperlink для отображения файлов, как гиперссылок, используя команду терминала OSC 8. Также добавлены опции --scheme и --authority для изменения схемы и имени хоста ссылок;
  • возможно, наконец-то исправлено сообщение об ошибках в JSON, когда не удается открыть каталог и требуется вывод полного дерева. Например, при использовании --du;
  • исправлена небольшая ошибка округления чисел в человекочитаемом выводе размера (-h), когда 9,99K округлялось до 10,0K, а не до 10K;
  • исправлен итоговый отчёт размеров директорий при использовании опции -du. Сумма размеров была правильной, но итоговый отчёт представлял собой суммирование сумм размеров всех директорий, а не только сумм самой верхней директории;
  • в дистрибутив добавлен файл .gitignore для тех, кому это нужно;
  • добавлено none в качестве допустимого параметра опции --sort (эквивалент -U);
  • добавлена возможность кросс-компиляции для Android;
  • возвращён вывод доступных кодировок, если не задан аргумент для опции --charsets;
  • команды --help и --usage используют полужирное и курсивное начертание атрибутами ANSI, если включено использование цветов (опцией -C);
  • очистка и рефакторинг кода;
  • исправлена регрессия при освобождении указателя;
  • в изменённом виде возвращено исправление пути к каталогу HTML href (опцией -H baseHREF), которое было удалено в версии 2.1.2.

>>> Подробности

★★★★★

Проверено: hobbit ()
Последнее исправление: hobbit (всего исправлений: 2)

За весь опыт работы с unix-подобными ОС так и не нашёл применения этой утилите.

kaldeon
()
Ответ на: комментарий от kaldeon

не нашёл применения этой утилите

А я напротив, везде её устанавливаю. Жаль, что в Debian tree не включили в standard system utilities.

Evenik ★★
()
Последнее исправление: Evenik (всего исправлений: 3)
Ответ на: комментарий от kaldeon

В последний раз я подобной тулзой пользовался, когда распечатывал содержание 360kb 5.25" дискет для флайера в конверт. Это было почти 40 лет назад.

beastie ★★★★★
()
Последнее исправление: beastie (всего исправлений: 2)
Ответ на: комментарий от kaldeon

Для демок, документации идеальна - чтобы показать требуемое/изначальное/конечное содержимое подкаталогов.

Kroz ★★★★★
()
Последнее исправление: Kroz (всего исправлений: 1)

пользовался!

Ros ★★★★
()

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

Правда, чаще правда достаточно поиска по внутренностям текстовых файлов.

a1ba ★★
()
Ответ на: комментарий от kaldeon

За весь опыт работы с unix-подобными ОС так и не нашёл применения этой утилите.

зато теперь можешь искать применение даже на Android`е:

«добавлена возможность кросс-компиляции для Android»

но КАК ? как этим воспользоваться на телефоне..

MKuznetsov ★★★★★
()
Ответ на: комментарий от kaldeon

А я вообще не представляю как можно жить без этой утилиты. Утилита полезна для получения представления что и как лежит в директории.

X512 ★★★★★
()

tree

Да, «подержите мои старые костыли».

Есть, кстати, современные альтернтаивы, такие как tre, из значимых профитов поддержка .gitignore и вывод выхлопа в JSON.

XOXO
()
Последнее исправление: XOXO (всего исправлений: 1)
Ответ на: комментарий от XOXO

Есть, кстати, современные альтернтаивы

Как только прочитал слово «современные», сразу промелькнуло в голове, что написано на расте. Открыл линк, и не ошибся)

iron ★★★★★
()
Ответ на: комментарий от iron

Как только прочитал слово «современные», сразу промелькнуло в голове, что написано на расте

Ты этот факт одобряешь или осуждаешь, не совсем понятно)

XOXO
()
Ответ на: комментарий от XOXO

Ты этот факт одобряешь или осуждаешь, не совсем понятно)

Не то, и не другое. Скорее, констатирую)

iron ★★★★★
()

исправлена небольшая ошибка округления чисел в человекочитаемом выводе размера (-h), когда 9,99K округлялось до 10,0K, а не до 10K;

Не понял, было правильное 10.0 и добавили баг, сделав потерю значащей цифры, или это ты так плохо перевёл?

firkax ★★★★★
()

Пользуюсь, удобная штука для всех тех кто иногда пишет техническую документацию. Жаль что не во всех дистрах из коробки и требуется доустанавливать.

EXL ★★★★★
()

Узнал о дополнительных ключах tree из новости. Внёс в алиасы. Спасибо!

Harliff ★★★★★
()
Ответ на: комментарий от kaldeon

Один раз пригождалась, нужно было у заказчика структуру каталогов узнать.

eagleivg ★★★★★
()
Ответ на: комментарий от XOXO

Слышал но никогда не пользовался locate. Он немного для другого заточен, как я понимаю. Напр. скачал я исходники какого-то проекта и хочу сразу все дерево файлов глянуть. find (или `find . | sort`) с этим хорошо справляется.

urxvt ★★★★★
()
Ответ на: комментарий от urxvt

Он немного для другого заточен, как я понимаю.

Да, все так, оно для более широкомасштабных поисков по ФС изначально, условно имеем большую ФС, по крону строится с нужной периодичностью индекс locate и потом производится очень быстрый поиск с его помощью. Сильно выручает когда лежат терабайты.

XOXO
()
Ответ на: комментарий от XOXO

Понимаю. У меня есть хранилище (17Тб занято), периодически возникает необходимость в нем искать. Там тоже find мне хватает с головой. Обычно, искать нужно в только в какой-то части хранилища (por^H^H^Hmovies, music, backup, ...). find работает в моем случае с приемлемой скоростью, так как файлы то сравнительно большие.

urxvt ★★★★★
()

Посмотрел man tree. tree понимает опцию --info и распечатывает комментарии из .info файлов, если такие присутствуют.

Помнится, что-то подобное в досе подобное было: волков коммандер умел показывать комментарии из файла descript.ion.

Вопрос вот в чём: кто-нибудь кроме tree эти .info файлы понимает?

Я пробовал гуглить, но лезет всякая хрень: или GNU Texinfo, или друпал.

debugger ★★★★★
()
Ответ на: комментарий от debugger

Дед просто придумал какую-то NIH, лишь бы не использовать православный формат, который старше Линукса.

alegz ★★★★
()
Ответ на: комментарий от beastie

В 2024 году аналогом дискет могут быть внешние HDD и облачные хранилища (если они позволяют монтировать себя как ФС). Цель, в общем-то, та же — ориентироваться, где что лежит.

hobbit ★★★★★
()
Ответ на: комментарий от kaldeon

Эта страница https://www.openssl.org/source/snapshot/ генерится с помощью tree.

tree -H 'https://www.openssl.org/source/snapshot/' \
     -L 1 \
     --noreport \
     --hintro intro.html \
     --houtro outro.html \
     --dirsfirst \
     --charset utf-8 \
     --ignore-case \
     --timefmt '%d-%b-%Y %H:%M' \
     -I index.html \
     -h \
     -D \
     -o ${SNAP_OUT}/index.html \
     ${SNAP_OUT}
kukuruku ★★
()
Последнее исправление: kukuruku (всего исправлений: 1)
Ответ на: комментарий от debugger

волков коммандер умел показывать комментарии из файла descript.ion

Он, вроде, был далеко не первым. Far до сих пор умеет использовать descript.ion и files.bbs, но можно добавить свои.
Как и в Total Commander и прочих «коммандерах».

Вопрос вот в чём: кто-нибудь кроме tree эти .info файлы понимает?

В .info немного другой формат:

имя_файла1
    описание1
имя_файла2
    описание2

А в descript.ion/files.bbs:

имя_файла1 описание1
имя_файла2 описание2
dataman ★★★★★
() автор топика
Ответ на: комментарий от XOXO

Но locate работает намного быстрее

Особенно plocate.

dataman ★★★★★
() автор топика

Как уже упоминали выше, удобно для документации. Причем даже в markdown и прочее на основе html вывод можно добавлять как есть - отступы сделаны на основе тире, а не пробелов, форматирование не ломается.

Также бывает весьма кстати опция -L, если не нужно оценивать структуру директории во всю глубину. Также удобно для поиска самых тяжелых по размеру поддиректорий и т.п.

На удивление набирается довольно много вариантов использования, хотя по началу и не скажешь.

tra-ta-ta
()

Полезная вещь когда нужно задокументировать или проверить структуру каталогов/файлов с правами доступа и владельцами

alx777 ★★
()

Блин, сколько ж у меня дерьма-то в домашней директории...

Осталось написать башу хелпер по опциям, что бы по <TAB>у он их договаривал :)

gns ★★★★★
()
Последнее исправление: gns (всего исправлений: 1)
Ответ на: комментарий от XOXO

Файнд умнее, у него ключ --delete есть. И --exec'ом можно с найденными файлами сразу что-то сделать.

gns ★★★★★
()

Утилита есть и даже добавил в нее свои цвета для разных файлов. Но вот не пользуюсь.

dmitry237 ★★★★
()

в винде тоже есть встроенная утилита tree

doomer
()
Ответ на: комментарий от hobbit

И от программулины аж олдскулы свело :) Я такого формата вывода с псевдографикой аж со времен масадоса не видел.

Ну чувак там иногда промахивается с шириной полей.

gns ★★★★★
()
Ответ на: комментарий от Nervous

емакс есть только у избранных :)

gns ★★★★★
()
Ответ на: комментарий от dataman

Про разницу форматов я знаю, дело не в деталях формата. Вопрос был: кто-нибудь кроме tree использует .info файлы?

debugger ★★★★★
()
Ответ на: комментарий от gns

Ну чувак там иногда промахивается с шириной полей.

Шрифты проверь. Линукс (ну, не ядро конечно, а хз кто на самом деле) любит подставлять глифы из другого шрифта, если в используемом шрифте глифов не хватает.

debugger ★★★★★
()

А gtree и ktree уже придумали сделать?

ls, кстати, может рекурсивно, с поддиректориями, содержимое выводить (с опцией -R; недавно узнал здесь, поэтому делюсь!) - без псевдографических соединительных линий, конечно, но зато со всеми преимуществами консольного вывода, разработанного десятки лет назад.

PeleWin
()
Последнее исправление: PeleWin (всего исправлений: 1)
Ответ на: комментарий от debugger
[-rw------- 2.1K]  │   │   │   │   │   │   │   ├── a055fe89e74998af_0
[-rw------- 6.9K]  │   │   │   │   │   │   │   ├── a0c96e459f085cc8_0
[-rw-------  50K]  │   │   │   │   │   │   │   ├── ba3f35948c16fad8_0
[-rw------- 10.0K]  │   │   │   │   │   │   │   ├── c7f1fdff094f8ebb_0
[-rw------- 8.5K]  │   │   │   │   │   │   │   ├── c81739780b9bf397_0
[-rw-------  15K]  │   │   │   │   │   │   │   ├── d7a26f803cc95ca9_0
[-rw------- 2.4K]  │   │   │   │   │   │   │   ├── da615778418abaa2_0

Там явно беда с расчетом ширины первого поля.

gns ★★★★★
()
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.