# Работа с архивами

## tar

### Использование

```sh
tar [ПАРАМЕТР...] [ФАЙЛ]…
```
где `ПАРАМЕТР` как `функция + аргумент`, а `ФАЙЛ` как *file*:

|Функция|Длинный формат|Описание|
|:-:|-|-|
|`-c`|`--create`|Создание нового архива|
|`-t`|`--list`|Вывод списка содержимого архива|
|`-x`|`--extract`|Извлечение файлов из архива|

|Аргумент|Длинный формат|Описание|
|:-:|-|-|
|`-p`|`--preserve-permissions`|Сохранить все права доступа к файлу|
|`-v`|`--verbose`|Выводить подробную информацию процесса распаковки или запаковки|
|`-z`|`--gzip`|Перенаправить вывод в команду `gzip` (сжать с помощью `gzip`)|
|`-r`|`--append`|Добавление файлов в конец архива|
|`-f` *file*|`--file=`*file*|Вывести результат в файл (или на устройство) *file*|
|`-C` *path*|`--directory=`*path*|Извлечение данных из архива в указанную директорию *path*|

### Примеры

Запаковать файлы/каталог в архив `tar`

```sh
tar -cpf archive.tar file directory
```

где

- `-c` - создание архива (`archive.tar`)
- `-p` - сохранение прав доступа к файлам (`file`, `directory`)
- `-f` - вывод результата в файл (`archive.tar`)

С ключом `-z` данные будут сжаты в процессе архивирования с помощью `gzip`:

```sh
tar -czpf archive.tar file directory
```

Просмотр содержимого архива:

```sh
tar -tf archive.tar
```
где `-t` вывод списка содержимого архива.

Параметр `-v` позволит получить подробную информацию в процессе создания или распаковки архива:

```sh
tar -xvf archive.tar
```

где `-x` распаковка архива.
