-- Leo's gemini proxy

-- Connecting to tilde.team:1965...

-- Connected

-- Sending request

-- Meta line: 20 text/gemini; lang=en


~Rami ₪ MANUALS

רמי


SUBJECT: Tree: Примеры использования команды

AUTHOR: Rami Rosenfeld

DATE: 16/10/22

TIME: 22.00

LANG: ru, en

LICENSE: GNU FDL 1.3

TAGS: gnu, gnome, software, opensource, linux, system, man, manual, bash, rhel, centos, mate, xfce, lxde, spin, tree


TREE: ПРИМЕРЫ ИСПОЛЬЗОВАНИЯ КОМАНДЫ


INTRO


Очень полезная команда bash, осуществляющая листинг файлов и каталогов с возможностью их фильтрования и сортировки.


NOTE


Допустим, у нас имеется директория, содержащая некоторую структуру подкаталогов и файлов:


ls


drwxr-xr-x.  2 4,0K 2016-12-04 21:18 directory_1/
drwxr-xr-x.  2 4,0K 2016-12-04 21:17 directory_2/
-rw-------.  1 1,5M 2016-06-09 12:39 file_1.name
-rw-------.  1 802K 2015-09-25 20:35 file_2.name
-rw-rw-r--.  1 333K 2016-11-25 02:46 file_3.name

Быстро просмотреть содержимое корневой директории и ее подкаталогов поможет команда tree, исполненная без подключей:


tree


├── directory_1
│   ├── 1.txt
│   ├── 2.png
│   └── 3.doc
├── directory_2
├── file_1.name
├── file_2.name
└── file_3.name

2 directories, 6 files

Узнать размеры файлов можно с помощью ключа -s ("size"). Чтобы вывод информации осуществлялся не в байтах, а в более понятных величинах, используем ключ -h ("human readable"):


tree -s -h


├── [ 4.0K]  directory_1
│   ├── [  105]  1.txt
│   ├── [  173]  2.png
│   └── [  278]  3.doc
├── [ 4.0K]  directory_2
├── [ 1.4M]  file_1.name
├── [ 802K]  file_2.name
└── [ 332K]  file_3.name

2 directories, 6 files

По умолчанию команда tree не выводит скрытые файлы и каталоги, поэтому необходимо применить ключ -a ("all"):


tree -a


├── directory_1
│   ├── 1.txt
│   ├── 2.png
│   └── 3.doc
├── directory_2
├── file_1.name
├── file_2.name
├── file_3.name
├── .hidden_directory
└── .hidden_file.txt

3 directories, 7 files

Ключи -p ("permissions"), -u ("user), -g ("group), -D ("date") позволят получить более детальную информацию:


tree -a -pugD


├── [drwxr-xr-x user     user     Dec  4 21:18]  directory_1
│   ├── [-rw------- user     user     Jan 15  2014]  1.txt
│   ├── [-rw------- user     user     Jan 15  2014]  2.png
│   └── [-rw------- user     user     Jan 15  2014]  3.doc
├── [drwxr-xr-x user     user     Dec  4 21:17]  directory_2
├── [-rw------- user     user     Jun  9 12:39]  file_1.name
├── [-rw------- user     user     Sep 25  2015]  file_2.name
├── [-rw-rw-r-- user     user     Nov 25  2:46]  file_3.name
├── [drwxr-xr-x user     user     Dec  4 21:22]  .hidden_directory
└── [-rw------- user     user     Apr  9  2019]  .hidden_file.txt

3 directories, 7 files

Ключ -t ("time") отсортирует список по времени последнего доступа:


tree -t


├── file_2.name
├── file_1.name
├── file_3.name
├── directory_2
└── directory_1
    ├── 2.png
    ├── 3.doc
    └── 1.txt

2 directories, 6 files

Ключ -r, добавленный к -t, отсортирует список в обратном порядке:


tree -t -r


.
├── directory_1
│   ├── 1.txt
│   ├── 3.doc
│   └── 2.png
├── directory_2
├── file_3.name
├── file_1.name
└── file_2.name

2 directories, 6 files

При использовании команды с помощью ключа -P можно задать отображение только нужных файлов (по паттерну):


tree -P *.png


├── directory_1
│   └── 2.png

Наоборот, из листинга по паттерну можно исключать отдельные файлы:


tree -I *.png


├── directory_1
│   ├── 1.txt
│   └── 3.doc
├── directory_2
├── file_1.name
├── file_2.name
└── file_3.name

2 directories, 5 files

Алиас .bashrc


alias mytree='tree -ashpugD'


Подробнее см.: man tree



₪ Back to home ₪


🄯 Rami Rosenfeld, 2022. GNU FDL 1.3.


-- Response ended

-- Page fetched on Mon Jun 3 00:51:42 2024