## Что делает данная команда?
Команда **LS** (List Files and Directories) - выводит список директорий и файлов в активном каталоге.
## Что она может делать?
- Выводить как списоком, то есть подробно, так и в строку.
- Сортировать вывод по алфавиту, дате и типу.
## Примеры
Попробуем сначала вывести просто `ls` без аргументов:
```bash
[cher@k-des test0]$
ls
dirrectory hello-world.txt
```
Мы видим, что было выведено 2 элемента: `hello-world.txt` и `dirrectory`.
Теперь посмотрим, имеються ли скрытые файлы:
```bash
[cher@k-des test0]$
ls -a
. .. dirrectory hello-world.txt .hide-file.txt
```
> Да бы скрыть файл или каталог, его название должно иметь в начле точку `.`.
Мы видим, что в нашем каталоге имееться скрыты файл `.hide-file.txt`. Но вместе с этим мы получили еще 2 элемента: `.` и `..`. Что они обозначают?
- `.` обозначает наш активный каталог.
- `..` ссылкаеться на предыдущий каталог.
Они нам особо не нужны. Можно их не выводить. Аргумент `-A` не выводит данные обозначения:
```bash
[cher@k-des test0]$
ls -A
dirrectory hello-world.txt .hide-file.txt
```
Теперь попробуем вывести списком. Для этого нам понадобиться аргумент `-l`. Попробуем снова посмотрет с дополнительны аргументом `-A`:
```bash
[cher@k-des test0]$
ls -lA
итого 12
drwxr-xr-x 2 cher cher 4096 янв 3 20:03 dirrectory
-rw-r--r-- 1 cher cher 16 янв 3 19:35 hello-world.txt
-rw-r--r-- 1 cher cher 10 янв 3 19:38 .hide-file.txt
```
Здесь нужно остановиться и разобраться, что здесь написано.
- **итого 12** - Так обозначаеться общий размер всех файлов в каталоге в килобайтах. Но считает не размерами файлов, а блоками.
- **-rw-r--r--** - Права на файл или каталог. *Данная тема очень обширная и ее следует рассматривать отдельно*.
- Мы можем увидеть, что у каталога в начале прав вместо `-` установлена `d`. Это обозначение каталога.
- **Первый столбец с обозначением cher** - Имя пользователя, который владеет каталогом или файлом.
- **Второй столбец с обозначением cher** - Группа, которая владеет каталога или файла.
- Почему имя пользователя и группа одинакова? При создании какого либо элемета, владельцем становиться создатель, а так же, присваиваеться его группа.
- **4096**, **16** и **10** - Размер файла и каталога в байтах.
> Каталоги, как и все в Linux - файл. Обычный пустой каталог весит **4096** байтов, то есть **4** КБ.
- **Янв 3 19:38** - Дата и время создания или измения каталога.
| Параметр | Описание |
| -------- | -------- |
| **итого 12** | Обозначаеться общий размер всех файлов в каталоге в килобайтах. Но считает не размерами файлов, а блоками. |
| **-rw-r--r--** | Права на файл или каталог. *Данная тема очень обширная и ее следует рассматривать отдельно*.
Мы можем увидеть, что у каталога в начале прав вместо `-` установлена `d`. Это обозначение каталога. |
| Первый параметр **cher** | Имя пользователя, который владеет каталогом или файлом. |
| Второй параметр **cher** | Группа, которая владеет каталога или файла. |
| **4096**, **16** и **10** | Размер файла и каталога в байтах.
Каталоги, как и все в Linux - файл. Обычный пустой каталог весит **4096** байтов, то есть **4** КБ. |
| **Янв 3 19:38** | Дата и время создания или измения каталога. |
Это базовые аргументы, которые должны знать пользователи GNU/Linux. Теперь посмотрим и другие парамерты.
## Аргументы
| Аргумент | Описание |
| -------- | -------- |
| `-l` | Выводит подробный список. |
| `-a`, `--all`| Выводит дополнительно скрытые файлы и каталоги, начинающиеся с точки. |
| `-A` `--almost-all` | Выведет все файлы в каталоге. Без активного каталога `.` и каталога выше `..`.|
| `-o` | То же, что и `-l`, но без групп. |
| `-g` | То же, что и `-l`, но без владельцев. |
| `--full-time` | Выведет время в полном варианте. Будет использоваться формат **full-iso** |