## Что делает данная команда?

Команда **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--** | Права на файл или каталог. *Данная тема очень обширная и ее следует рассматривать отдельно*. <br> Мы можем увидеть, что у каталога в начале прав вместо `-` установлена `d`. Это обозначение каталога. |
| Первый параметр **cher** | Имя  пользователя, который владеет каталогом или файлом. |
| Второй параметр **cher** | Группа, которая владеет каталога или файла. |
| **4096**, **16** и **10** | Размер файла и каталога в байтах. <br> Каталоги, как и все в Linux - файл. Обычный пустой каталог весит **4096** байтов, то есть **4** КБ. |
| **Янв 3 19:38** | Дата и время создания или измения каталога. |

Это базовые аргументы, которые должны знать пользователи GNU/Linux. Теперь посмотрим и другие парамерты.

## Аргументы

| Аргумент | Описание |
| -------- | -------- |
| `-l`     | Выводит подробный список. |
| `-a`, `--all`| Выводит дополнительно скрытые файлы и каталоги, начинающиеся с точки. |
| `-A` `--almost-all` | Выведет все файлы в каталоге. Без активного каталога `.` и  каталога выше `..`.|
| `-o` | То же, что и `-l`, но без групп. |
| `-g` | То же, что и `-l`, но без владельцев. |
| `--full-time` | Выведет время в полном варианте. Будет использоваться формат **full-iso** |

