Отобразить дерево каталогов linux
Как пользователь Linux, нашим предпочтительным вариантом для списков каталогов является старая добрая команда ls. Команда ls, однако, испытывает недостаток в некоторых функциях, которые обеспечиваются нашей темой на рассмотрении - древовидная команда. Эта команда печатает папки, подпапки и файлы в форме дерева. Можно сделать команду еще более полезной при помощи различных вариантов / флаги с ним для настройки списка.
Эта статья объяснит, с примерами, использованием древовидной команды.
Мы выполнили команды и процедуры, упомянутые в этой статье о системе Ubuntu 18.04 LTS.
Как установить древовидную команду
Установка древовидной утилиты командной строки довольно проста через способное - получают команду. Откройте свою командную строку Ubuntu, Терминал, или через системного Тире или через ярлык Ctrl+Alt+t.
Тогда введите следующую команду как sudo:
Обратите внимание на то, что только авторизованный пользователь может добавить, удалить и настроить программное обеспечение на Ubuntu.
После того, как дерево установлено, можно проверить номер версии и также удостовериться, если установка была успешна посредством следующей команды:
Мы рекомендуем выполнить следующую команду перед каждой установкой так, чтобы можно было получить последнюю доступную версию программного обеспечения, существующего в репозиториях онлайн:
Как к команде Use Tree
Здесь мы упомянем некоторые примеры древовидной команды так, чтобы можно было не только использовать ее, но также и предпринять шаги вперед в освоении ее.
Основной Древовидный вывод
Это - самый основной способ использовать древовидную команду:
Вывод показывает древовидную структуру Вашего текущего каталога, отображая все папки, подпапки и файлы.
Содержание дисплея определенного каталога
Для списка файлов и подпапок определенного каталога, а не того из текущего каталога, можно определить имя каталога или путь через следующий синтаксис команды:
-a [DirectoryName/Path] дерева $
Следующая команда перечислит все файлы и подпапки, если таковые имеются, в каталоге Pictures:
Отобразите скрытые файлы наряду с другими файлами с помощью Дерева
Древовидная команда не отображает список скрытых файлов и папок в Ubuntu. Можно, однако, использовать флаг следующим образом для списка их:
Файлы и папки в дереве, начинающем с a'.', являются скрытыми. В вышеупомянутом выводе я выделил одну такую запись, чтобы объяснить, как это похоже.
Отобразите только список каталогов через Дерево
Если Вы хотите просмотреть только список каталогов а не базовые файлы, можно использовать флаг d с древовидной командой следующим образом:
Отобразите префикс полного пути файлов и папок с помощью Дерева
С f сигаретой можно настроить древовидный флаг для отображения полного пути как префикса для всего списка файлов и папок.
Это особенно полезно, когда Вы хотите знать то, что существует где.
Размер дисплея файлов и папок с помощью Дерева
С флагом s можно заставить древовидную команду распечатать размер, в байтах, всех файлов и папок в каталоге.
Это помогает Вам в определении, какие объекты берут большую сумму пространства в Вашей системе и избавляются от ненужных.
Полномочия чтения-записи дисплея файлов и папок с помощью Дерева
Через флаг p в Вашей древовидной команде можно просмотреть чтение, записать и удалить полномочия на перечисленных файлах и папках.
Таким образом, прежде чем Вы хотите выполнить операцию на файле и папке, Вы можете сначала знать и можете быть редактированием полномочия, которые Вы имеете на определенном объекте.
Перечислите содержание папки до определенного уровня / глубина через Дерево
Вместо того, чтобы перечислить все содержание Вашего каталога, можно настроить древовидную команду для отображения дерева к определенному уровню или глубине. Например, уровень 1 в древовидной команде только покажет список данной папки, а не любую из ее подпапок. Вот то, как использовать синтаксис:
Следующая команда отобразит только подкаталоги (с помощью флага-d) текущего каталога а не далее расширенного дерева.
Сделайте список файлов печати команды Tree, содержащий определенный шаблон
Можно использовать древовидную команду, чтобы только перечислить файлы, содержащие определенный подстановочный шаблон. Вот синтаксис для определения шаблона:
Дерево $-P [[шаблон] *] / [* [шаблон]] / [[*pattern*]]
В этом примере я использую древовидную команду для списка тех файлов, запускающихся с ключевого слова “касание”:
Заставьте команду Tree постараться не печатать некоторые выборочные имена файлов
Можно также использовать древовидную команду для списка всего кроме файлов, содержащих определенный подстановочный шаблон.
Дерево $-I * [ключевые слова]
Следующая команда перечислит все файлы и папки за исключением той, содержащей “поспешное” ключевое слово.
Вывод команды Tree печати в файл
Если Вы хотите распечатать результат древовидной команды в файл, можно использовать следующий синтаксис:
Дерево $-o [имя файла]
Следующая команда распечатает список всех файлов и папки папки Pictures в файл HTML под названием myfile.html
Древовидная справка
Древовидная команда намного более полезна, чем использование, которое мы описали. Можно исследовать команду далее путем просмотра справки древовидной команды следующим образом:
При помощи флагов мы описали и также при помощи комбинаций этих флагов, можно освоить древовидную команду еще больше!
Чтобы просмотреть содержимое подкаталога `work' в текущем каталоге, введите:
Чтобы просмотреть содержимое каталога `/usr/doc', введите:
$ ls /usr/doc [Enter]
Из листинга по умолчанию Вы не сможете отличить каталоги и исполняемые файлы от обычных. Используйте ключ `-F', который заставит ls поместить символ `/' после имен подкаталогов и символ `*' после имен исполняемых файлов:
В этом примере текущий рабочий каталог содержит исполняемый файл `repeat', каталог `words', и несколько файлов других типов `test1' и `test2'.
Еще один способ просмотра содержимого каталогов - использование ``менеджера файлов'' , которых для Linux создано достаточно много; наиболее популярным является ``Midnight Commander'' или mc.
Чтобы вывести более подробный листинг каталога, используйте ls с ключом `-l' (``long''). Листинг будет содержать размер каждого файла в байтах, время последней модификации, тип файла, имя владельца и права доступа.
Для вывода подробной информации о каталоге `/usr/doc/bash', введите: Первая строка содержит информацию о полном объеме занимаемого каталогом дискового пространства в блоках по 1024 байта (в данном случае 72). Каждая последующая строка содержит несколько колонок с информацией о каждом файле.
Первая колонка указывает тип файла и права доступа к нему. Первый символ в этой колонке определяет тип файла; тире (`-') означает обычный файл (по умолчанию). Каталоги обозначаются буквой `d', а символические ссылки - буквой `l'. Остальные девять символов в первой колонке указывают права доступа к файлу. Вторая колонка указывает количество жестких ссылов на файл. Третья и четвертая колонки указывают пользователя и группу, которые владеют этим файлом. Пятая колонка содержит размер файла в байтах, шестая - время и дату последней модификации файла, а в последней колонке указано имя файла, к которому относится информация.
Чтобы просмотреть каталог рекурсивно, то есть со всеми содержащимися в нем подкаталогами, используйте опцию `-R'. Например, для текущего каталога введите: В данном примере текущий рабочий каталог содержит два подкаталога, `work' и `play', но не содержит файлов. Каждый из подкаталогов содержит файл `notes'.
Чтобы вывести полное оглавление все файловой системы, наберите:
Обычно этот ключ комбинируют с опцией `-l', чтобы вывести наиболее полный листинг файлов системы:
Примечание: Некоторые каталоги могут не попасть в листинг, если у Вас нет права доступа к ним.
Чтобы отсортировать список файлов в каталоге по времени создания или модификации, используйте опцию `-t'. Например, чтобы вывести список файлов в каталоге `/usr/tmp', чтобы самые новые файлы были вверху списка, введите:
$ ls -t /usr/tmp [Enter]
По умолчанию, ls не выводит имена файлов, начинающиеся с символа ``точка'' (`.'). Чтобы уменьшить листинг, многие приложения ``скрывают'' файлы конфигурации в Вашем домашнем каталоге, присваивая им имена, начинающиеся с точки; они называются dot-файлы, или ``скрытые'' . Каждый каталог имеет два специальных dot-файла: `..' - родительский каталог и `.' - сам этот каталог.
Чтобы увидеть все файлы в каталоге, включая скрытые, используйте опцию `-a'. Например, для текущего каталога:
Чтобы увидеть все файлы, исключая специальные `..' и `.', используйте опцию `'-A:
Чтобы увидеть цветной листинг каталога, используйте ls с ключом `--color' ; тогда все имена файлов будут выведены разными цветами, в зависимости от их содержания. По умолчанию каталоги выводятся синим, текстовые файлы - белым, исполняемые - зеленым и т.д.
Примечание: Обычно для команды `ls -color' создается псевдоним `ls', так что листинг выводится в цвете по умолчанию.
Для того, чтобы вывести граф иерархии каталогов, используйте утилиту tree. Например, для вывода дерева каталогов, начиная с текущего, наберите:
В этом примере выводится дерево каталогов, в котором текущий каталог содержит два подкаталога `projects' и `trip'; а каталог `projects', в свою очередь, содержит подкаталоги `current' и `old'.
Чтобы вывести дерево каталогов для определенного каталога, укажите его имя в качестве аргумента tree. Например, для Вашего домашнего каталога, введите:
Чтобы вывести дерево каталогов, в котором будут присутствовать только имена каталогов, используйте опцию `-d'. Это полезно при выводе полного дерева каталогов системы:
$ tree -d / > tree [Enter]
Команда ls имеет много опций для управления листингом и отображаемой информацией о файлах; приведенная таблица описывает некоторые из них.
Опция | Описание |
--color | Вывод имен файлов в цвете, в зависимости от их типа. |
-R | Рекурсивный список файлов. |
-a | Вывод всех файлов, включая скрытые. |
-d | Вывод только имен каталогов, без промсмотра их содержимого. |
-f | Вывод содержимого каталога в том порядке, в котором оно записано на диск. |
-l | Подробный листинг. |
-r | Сортировка содержимого каталога в обратном порядке. |
-s | Вывод размера - в блоках по 1K - для каждого файла. |
-t | Сортировка по времени создания или модификации файла. |
Примечание: Вы можете комбинировать опции в любом порядке; например, чтобы вывести список файлов, отсортированный по времени, со всеми атрибутами, введите `-lt'. Чтобы рекурсивно отобразить все скрытые файлы и их атрибуты, используйте `-lRa'. Порядок опций не имеет значения, так что `-lRa' означает то же самое, что и `-alR'.
Next: Копирование файлов и каталогов Up: Работа с файлами Previous: Перемещение по каталогам Contents Index Alex Otwagin 2002-12-16
Команда Bash Tree в Linux Mint 20
Чтобы использовать команду Bash «tree» в Linux Mint 20, вам сначала необходимо установить ее, выполнив эту команду:
Теперь, чтобы проверить, действительно ли команда Bash «tree» находится в вашей системе Linux Mint 20 или нет, вы можете проверить ее версию, выполнив команду, указанную ниже:
Версия команды Bash «tree», которую нам удалось установить только что, выделена на следующем изображении:
После этого вы можете проверить синтаксис и все доступные параметры для этой команды, чтобы вы могли использовать ее эффективно. Вы можете найти эту информацию, выполнив команду, указанную ниже:
Выполнение этой команды отобразит всю необходимую информацию о команде Bash «tree», включая ее синтаксис, которая вам понадобится для работы с этой командой без каких-либо затруднений. Вы можете потратить некоторое время на это, чтобы хорошо изучить все доступные варианты.
После выполнения этих шагов мы хотели бы поделиться с вами некоторыми из наиболее полезных примеров использования команды Bash «tree» в Linux Mint 20.
Пример №1: Отображение содержимого каталога в древовидной структуре
Древовидные структуры обычно легче визуализировать и интерпретировать по сравнению с обычным текстовым представлением. Следовательно, если у вас есть каталог, содержащий множество разных файлов и подкаталогов, вам следует предпочесть просматривать его содержимое в древовидной структуре. Это легко сделать, выполнив команду tree, как показано ниже:
Древовидная структура нашего текущего рабочего каталога показана на следующем изображении. Здесь следует отметить, что простая команда «tree» не отображает скрытые файлы и каталоги. Вот почему количество файлов и каталогов, отображаемых в выводе этой команды, очень мало.
Пример № 2: Отображение скрытых файлов и каталогов с помощью древовидной команды
В отличие от простого «дерева», вы также можете просмотреть скрытые файлы и каталоги. Вы можете сделать это просто, запустив команду «tree» с флагом «-a», как показано ниже:
Вы можете сравнить вывод этой команды с выводом, показанным в примере № 1, и вы сможете понять, что количество файлов и каталогов намного больше, чем показано выше. Это потому, что на этот раз команда «tree» также показала скрытые файлы и каталоги.
Пример № 3: Отображение файлов и каталогов вместе с их полными путями
Вместо того, чтобы отображать только имена файлов и каталогов, вы также можете узнать их точные пути. Вы можете сделать это, просто объединив команду «tree» с флагом «-f» следующим образом:
Пути ко всем файлам и каталогам в нашем текущем рабочем каталоге показаны ниже в виде древовидной структуры. Если бы вы выполняли команду «tree» в каталоге, отличном от «Home», тогда концепция путей была бы более ясной. Однако в нашем случае, поскольку мы выполнили команду «tree», находясь в «домашнем» каталоге, именно поэтому вы можете видеть только «./» вместо пути к файлу или каталогу, поскольку он представляет «домашний» каталог.
Пример №4: Распечатать дерево каталогов в XML-представлении
XML или Extensible Markup Language имеет особый синтаксис, в котором он представляет наши файлы и каталоги. Следовательно, если вы хотите распечатать свое дерево каталогов в XML-представлении, вы можете сделать это, объединив флаг «-X» с командой «tree» следующим образом:
XML-представление нашего дерева каталогов показано на изображении ниже:
Пример № 5: Отображение файлов и каталогов вместе с их разрешениями на доступ
Разрешения для файлов и каталогов считаются очень важными, особенно если мы хотим иметь дело с политиками управления доступом в операционной системе. Если вы хотите, чтобы права доступа к файлам и каталогам отображались в дереве каталогов, вам нужно будет выполнить команду «tree» с флагом «-p».
Разрешения на «чтение», «запись» и «выполнение» показаны перед каждым именем файла и каталога в нашей структуре каталогов, как показано на следующем изображении. Кроме того, права доступа к каталогу также включают флаг «d», который указывает, что следующее имя относится к каталогу, а не к файлу.
Заключение
В сегодняшней статье мы рассказали вам о методе установки команды Bash «tree» в вашей системе Linux Mint 20. Мы продемонстрировали метод проверки его установки, а также доступ к страницам справки. Затем мы поделились с вами пятью наиболее важными сценариями, в которых команда «tree» может использоваться очень эффективно. Помимо этих пяти сценариев, существует множество других вариантов использования команды Bash «tree». Вкратце, эта команда Bash считается чрезвычайно полезной при работе с операционными системами на базе Linux.
Обычно для просмотра списка файлов и директорий в командной строке Linux используется команда ls. В данной заметке мы рассмотрим, как выводить древовидный список файлов и директорий. Для этого мы воспользуемся утилитой/командной tree
Команда tree рекурсивно обходит все вложенные директории и файлы для выбранной директории и выводит информацию в удобном древовидном формате.
Установка утилиты tree
По умолчанию утилита tree не установлена в популярных дистрибутивах Linux.
Для установки в Ubuntu выполните в терминале команду:
Для установки в Fedora выполните команду:
Синтаксис команды tree
Команду tree можно использовать следующим образом:
treetree /путь/до/директорииtree опцииtree опции /путь/до/директории
Опции
У команды довольно много опций, остановимся только на некоторых из них:
-a | показывать все файлы, включая скрытые. |
-d | показывать только директории. |
-u | показывать владельца или идентификатор пользователя (UID). |
-g | показывать группу или идентификатор группы (GID). |
-L уровень | выводить дерево не глубже определенного уровня вложенности. |
-h | показывать размер файлов. |
-D | показывать дату последнего изменения файла или директории. |
-С | включить подсветку разными цветами. |
-X | вывести информацию в формате XML. |
-J | вывести информацию в формате JSON. |
Полный список опций команды tree можно получить, выполнив команду man tree
Рассмотрим несколько примеров использования команды tree
Дерево текущей директории
Выведем дерево файлов в текущей директории. Выполняем команду tree без аргументов:
Читайте также: