16 Апр, 2016

Как заархивировать и разархивировать файлы и папки в Linux

Добрый день. В этой статье рассмотрим, как заархивировать и разархивировать папки и файлы в любой Linux системе.

TAR [файл *.tar] — это простой архив без сжатия
TAR GZIP [файл *.tar.gz] — это TAR архив, сжатый с помощью GZIP
TAR BZIP2 [файл *.tar.bz2] — это TAR архив, сжатый с помощью BZIP2

Архивация:

Для создания архива нужно указать tar с помощью ключа -c. Кроме того, для упаковки содержимого в файл необходим ключ -f. Укажем имя будущего архива, а затем файлы, которые хотим упаковать:

tar -cvf file.tar file.txt
tar -cvf folder.tar /path/to/folder

Для двух самых популярных архиваторов gzip и bzip2 ключи будут -z и -j соответственно:

tar -cvzf folder.tar.gz /path/to/folder
tar -cvjf folder.tar.bz2 /path/to/folder

Ключ -v включает вывод списка упакованных файлов в процессе работы. К сожалению, более продвинутой индикации хода процесса (например, указания степени готовности в процентах) в tar не предусмотрено.

Распаковать архив:

Действие «разархивирования» задается с помощью ключа -x. Снова потребуется ключ -f для указания имени файла архива. Добавим ключ -v для визуального отображения процесса.

tar -xvf  /path/to/archive.tar
tar -xvzf  /path/to/archive.tar.gz
tar -xvjf  /path/to/archive.tar.bz2

Tar распакует содержимое архива в текущую папку. Другое место для распаковки можно указать с помощью ключа -C:

tar -xvf /path/to/archive.tar -C /path/to/folder
tar -zxvf /path/to/archive.tar.gz -C /path/to/folder
tar -jxvf /path/to/archive.tar.bz2 -C /path/to/folder

Чтобы просмотреть, что содержится в архиве, нужно выполнить команду:

tar -tf archive.tar

Она выведет простой список файлов и папок. Если добавить ключ -v, будет выведен подробный список с указанием размера, прав доступа и других параметров:

tar -tvf archive.tar
tar -ztvf archive.tar.gz
tar -jtvf archive.tar.bz2