Если вы работаете в Linux, то наверняка сталкивались с необходимостью быстро понять, как организована файловая система. Для этого отлично подходит команда tree.
В этой статье я расскажу, что такое команда tree, как её использовать и зачем она нужна начинающим пользователям Linux.
Что такое команда tree?
Команда tree позволяет отображать содержимое папки и её подкаталогов в виде красивой иерархической структуры. В отличие от стандартной команды ls, которая показывает список файлов и папок, tree визуализирует всю структуру данных в виде дерева.
Почему команда tree — полезный инструмент?
- Быстрый просмотр структуры: легко понять, как организована папка.
- Декларативное отображение: ясно видна вложенность папок и файлов.
- Экспорт данных: сохраняйте структуру в текстовые файлы для последующего анализа.
Проверка наличия tree
В большинстве дистрибутивов Linux команда tree не установлена по умолчанию. Проверить, есть ли она в вашем случае можно следующей командой:
[root@waky practice]# tree --version
tree v1.8.0 (c) 1996 - 2018 by Steve Baker, Thomas Moore, Francesc Rocher, Florian Sesser, Kyosuke Tokoro
[root@waky practice]#
Если вы получили в ответ информацию об версии программы, то tree установлен и готов к работе. В противном случае утилиту нужно сначала установить.
За руководством по установке tree обратитесь к нашим статьям для CentOS и Ubuntu.
Основные команды и параметры tree
- 1. Показать содержимое папки
- 2. Указать глубину отображения
- 3. Отобразить скрытые файлы
- 4. Запись структуры в файл
- 5. Отобразить только папки
Давайте рассмотрим самые популярные параметры, которые помогают сделать вывод более удобным.
1. Показать содержимое папки
Базовый способ применения команды, вывод структуры указанной директории.
Просто наберите:
tree /путь/до/папки
Пример вывода:
[root@waky practice]# tree ./
./
├── dir1
│ ├── file1.txt
│ └── subdir1
│ ├── file2.txt
│ └── sub_subdir1
│ └── file3.txt
├── dir2
│ ├── file6.txt
│ └── subdir2
│ ├── file5.txt
│ └── sub_subdir2
│ └── file4.txt
└── file7.txt
6 directories, 7 files
[root@waky practice]#
Если не задать путь, команда будет выполнена к текущей директории.
2. Указать глубину отображения
В системе может присутствовать большое количество вложений. Если мы хотим узнать структуру пары ближайших уровней, то имеет смысл ограничить глубину просмотра опцией -L:
tree -L 2
Это покажет только две уровни вложенности:
[root@waky practice]# tree -L 2
.
├── dir1
│ ├── file1.txt
│ └── subdir1
├── dir2
│ ├── file6.txt
│ └── subdir2
└── file7.txt
4 directories, 3 files
[root@waky practice]#
3. Отобразить скрытые файлы
По умолчанию tree не показывает скрытые файлы и папки. Если нужно включить их в вывод используйте опцию —a:
tree -a
Пример вывода:
[root@waky practice]# tree -a ./
./
├── dir1
│ ├── file1.txt
│ ├── .hidden_file2
│ └── subdir1
│ ├── file2.txt
│ └── sub_subdir1
│ └── file3.txt
├── dir2
│ ├── file6.txt
│ └── subdir2
│ ├── file5.txt
│ └── sub_subdir2
│ ├── file4.txt
│ └── .hidden_file3
├── file7.txt
└── .hidden_file1
6 directories, 10 files
[root@waky practice]#
4. Запись структуры в файл
Часто структура файлов и папок может оказаться очень обширной. Ее вывод непосредственно в терминал может банально не вместится из-за ограничения по количеству строк.
Для сохранения структуры в файл используйте перенаправление вывода:
tree > structure.txt
Пример:
[root@waky practice]# tree > structure.txt
[root@waky practice]#
Далее информацию из файла можно извлекать частями с помощью команды tail или команды head:
[root@waky practice]# head structure.txt
.
├── dir1
│ ├── file1.txt
│ └── subdir1
│ ├── file2.txt
│ └── sub_subdir1
│ └── file3.txt
├── dir2
│ ├── file6.txt
│ └── subdir2
[root@waky practice]#
5. Отобразить только папки
Иногда нужно показать только папки, для этого существует опция -d:
tree -d
Пример вывода:
[root@waky practice]# tree -d ./
./
├── dir1
│ └── subdir1
│ └── sub_subdir1
└── dir2
└── subdir2
└── sub_subdir2
6 directories
[root@waky practice]#
Заключение
Команда tree — удобный и мощный инструмент для визуализации структуры папок в Linux. Он делает работу с файлами проще и нагляднее, помогает быстро ориентироваться в сложных каталогах.