образовательная корпорация
Создать
Править
Отменить
Вверх

Левое меню

Последние

Изменить меня

1
Вкладки

Асгард сеть

Самарт сеть


zip -r nazvanie.zip papka-nazvanie

Работа с архивами стандартными средствами командной строки Linux

В отличие от стандартных средств Windows, где архивный и сжатый файл по сути одно и тоже. В системе Linux различают архивный файл и сжатый файл.

Архивный файл - это набор файлов и каталогов, помещенных в один файл. Архивный файл по размеру равен сумме размеров всех файлов и каталогов, входящих в него.

Сжатый файл - это набор файлов и каталогов, помещенных в один файл таким образом, что его размер меньше, чем размер файлов и каталогов, входящих в него.

Архивный файл не является сжатым, но сжатый файл может быть архивным.

В командной строке в операционной системе Linux мы можем воспользоваться утилитами gzip и bzip2 для сжатия файлов и утилитой tar для архивирования.

Утилиты gzip и bzip2 умеют сжимать и распаковывать только один файл. Поэтому перед сжатием нескольких файлов предварительно их нужно упаковать в один файл (заархивировать или «затарить») утилитой tar.

Утилита tar сама не создаёт сжатых архивов, а использует для сжатия внешние утилиты, такие как gzip и bzip2, для того чтобы сжать папку с файлами в Linux нам нужен симбиоз программы tar и gzip или tar и bzip2.

Синтаксис утилиты tar:
tar [-ключи] [название архива] [путь для упаковки]

Ключи, используемые с командой tar:

  1. c - создать новый архив
  2. f - в сочетании с опцией -c используется для создания файла tar из указанного файла; в сочетании с опцией -x используется для разархивирования указанного файла
  3. t - показать список файлов в файле tar
  4. v - показать ход процесса архивирования
  5. x - извлечь файлы из архива
  6. z - сжать файл tar с помощью утилиты gzip
  7. j - сжать файл tar с помощью утилиты bzip2

Чтобы создать файл tar:
tar -cvf filename.tar /dir/file
Чтобы распаковать содержимое файла tar:
tar -xvf filename.tar
tar -xvf filename.tar -C /home/path/

Чтобы создать сжатый файл gzip:
tar -czvf filename.tgz /dir/file
Чтобы распаковать содержимое файла gzip tar:
tar -xzvf filename.tgz

Чтобы создать сжатый файл bzip:
tar -cjvf filename.tbz /dir/file
Чтобы распаковать содержимое файла bzip tar:
tar -xjvf filename.tbz

Для файлов, содержащих архивы tar применяются следующие расширения имён файлов:

архив tar:

  .tar

архив tar, сжатый программой gzip:

  .tar.gz
  .tgz (в случае ограничений файловой системы на длину расширения)
  .tar.gzip

архив tar, сжатый программой bzip2:

  .tar.bz2
  .tar.bzip2
  .tbz2
  .tb2
  .tbz

Удалить файлы не под версионным контролем

В сети предлагается много вариантов, многие не работают если имя файла содержит пробел. Лучший вариант из опробованных:
svn status –no-ignore | grep '^[?I]' | sed «s/^[?I] » | xargs -I{} rm -rf «{}»
















Как создать архив и извлечь из архива zip, tar, tar.gz и tar.bz2 в Linux

Сжатие данных чрезвычайно полезно для нас на протяжении многих лет. Это сжатие файлов файлов при отправке по почте, резервное копирование ифнормации хранящейся на сервере. Мы используем сжатие для того чтобы сохранить ценное пространства на жестком диске или сделать загрузку файлов простой.
Есть форматы сжатия которые позволяют нам сжимать нашим данным, на 60% или более. Мы рассмотрим некоторые из этих форматов для сжатия и распаковки файлов и директорий на Linux машине. Мы рассмотрим основные форматы zip, tar, tar.gz и tar.bz2.
Прежде чем пойти дальше хотелось бы заметить, что нельзя ограничиться одним форматом архивирования. Формат zip – является стандартом де-факто, выбирайте его если вы планируете работать с файлами на Windows машинах, и передовать их другим пользователям. Если вы планируете использовать файлы на Maс и Linux Вам подойдет формат tar.gz.
ZIP

zip – самый популярный формат архивов, его крупнейшим приемуществом является доступность на все операционных системах. Будь то Linux, Mac OS или Windows, везде вы сможете без проблем использовать данный формат. К недостаткам можно отнести не самый лучший уровень сжатия.

Для сжатия папки используем команду:
zip -R archive.zip directory_compress
Извлечь файлы из архива:
unzip archive.zip

TAR

tar – широко используемый в Linux системах формат архивирования. Приемущества формат tar в том, что потребляет мало памяти и очень быстрый. Недостаток слабый уровень сжатия, точнее его отсутствие.

Для сжатия папки используем команду:
tar -cvf archive.tar directory_compress
Извлечь файлы из архива:
tar -xf archive.tar

TAR.GZ

tar.gz – используется для большинства задач где нужно хорошая степень сжатия и не слишком большая нагрузка на CPU.

Для сжатия папки используем команду:
tar -zcvf archive.tar.gz directory_compress
Извлечь файлы из архива:
tar -xf archive.tar.gz

TAR.BZ2

tar.bz2 – этот формат имеет наилучшие показатели по уровню сжатия из всех упомянутых в данной статье, но обратной стороной медали является высокая нагрузка на CPU, потребление памяти и более низкая скорость сжатия.

Для сжатия папки используем команду:
tar -jcvf archive.tar.gz directory_compress
Извлечь файлы из архива:
tar -xf archive.tar.gz

С временем вы найдете для себя копромис между уровенем сжатия и потребялемыми ресурсами CPU, памяти и времени. Вы будете сами решать когда нужно быстрое, но менее эффективное сжатие, а когда наоборот.